import%20marimo%0A%0A__generated_with%20%3D%20%220.17.6%22%0Aapp%20%3D%20marimo.App(width%3D%22full%22%2C%20app_title%3D%22VeriGraf%E2%84%A2%20%E2%80%94%20The%20De%20Cesare%20Protocol%22)%0A%0A%0A%40app.cell%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(%22%22%22%0A%20%20%20%20%23%20The%20Crisis%20of%20Visual%20Truth%3A%20Introducing%20the%20VITA-VQ%E2%84%A2%20Protocol%20v2.1%0A%20%20%20%20%20%20%20%20%23%23%23%20A%209-Pillar%20Forensic%20Hypergraph%20for%20the%20Generative%20Age%0A%20%20%20%20%20%20%20%20**By%20Keith%20De%20Cesare**%20%7C%20*molab%202026%20Submission*%0A%0A%20%20%20%20%20%20%20%20---%0A%0A%20%20%20%20%20%20%20%20%23%23%23%23%201.%20The%20Narrative%20Hook%3A%20The%20Collapse%20of%20the%20Optical%20Consensus%0A%20%20%20%20%20%20%20%20For%20over%20a%20century%2C%20the%20photograph%20served%20as%20an%20unassailable%20anchor%20of%20truth.%20Today%2C%20that%20optical%20consensus%20has%20fractured.%20The%20rapid%20proliferation%20of%20advanced%20diffusion%20models%20and%20generative%20AI%20has%20created%20a%20landscape%20where%20hyper-realistic%20synthetic%20media%E2%80%94deepfakes%2C%20altered%20historical%20records%2C%20and%20hallucinated%20physics%E2%80%94can%20be%20manufactured%20at%20scale.%20We%20are%20no%20longer%20facing%20a%20crisis%20of%20misinformation%3B%20we%20are%20facing%20a%20crisis%20of%20visual%20reality%20itself.%20Human%20intuition%20can%20no%20longer%20detect%20the%20mathematical%20seams%20of%20a%20synthetic%20image.%0A%0A%20%20%20%20%20%20%20%20%23%23%23%23%202.%20Abstract%0A%20%20%20%20%20%20%20%20This%20paper%20introduces%20the%20**De%20Cesare%20Protocol%20(v2.1)**%20and%20its%20digital%20counterpart%2C%20the%20**Veracity%20Quotient%20(VITA-VQ%E2%84%A2)**.%20Moving%20beyond%20simplistic%20binary%20%22fake%2Freal%22%20detectors%2C%20VITA-VQ%20provides%20a%20granular%2C%209-Pillar%20forensic%20matrix%20that%20analyzes%20structural%20geometry%2C%20photon%20ray-tracing%20consistency%2C%20and%20metadata%20provenance.%20By%20translating%20deepfake%20anomalies%20into%20a%20high-contrast%20geometric%20proof%20(the%20VeriGraf%E2%84%A2)%2C%20this%20interactive%20suite%20allows%20analysts%2C%20journalists%2C%20and%20educators%20to%20visually%20pinpoint%20exactly%20*where*%20and%20*why*%20an%20image%20violates%20the%20laws%20of%20physics%20or%20historical%20context.%0A%0A%20%20%20%20%20%20%20%23%23%23%23%20Beyond%20PhyLAA-X%3A%20The%20Shift%20to%20Transparent%20Hypergraphs%0A%20%20%20%20Recent%20attempts%20to%20introduce%20physics-grounded%20deepfake%20detection%2C%20such%20as%20the%20Aletheia%20(PhyLAA-X)%20framework%2C%20correctly%20identified%20the%20limitations%20of%20pixel-level%20artifact%20hunting.%20However%2C%20these%20models%20remain%20computationally%20opaque%20and%20practically%20inaccessible%2C%20often%20relying%20on%20clunky%2C%20non-functional%20repositories.%20The%20De%20Cesare%20Protocol%20(v2.1)%20resolves%20this%20by%20expanding%20the%20physical%20invariants%20(Observation%20and%20Anchoring)%20into%20a%20broader%209-Pillar%20matrix%20that%20includes%20Provenance%2C%20Historical%2C%20and%20Linguistic%20data.%20Furthermore%2C%20VITA-VQ%20replaces%20the%20black-box%20terminal%20output%20with%20the%20VeriGraf%E2%84%A2%E2%80%94an%20interactive%2C%20translucent%20heatmap%20that%20makes%20the%20forensic%20math%20instantly%20legible%20to%20the%20human%20eye.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(%22%22%22%0A%20%20%20%20%23%23%23%23%203.%20The%20Need%20for%20Action%3A%20Generative%20Friction%0A%20%20%20%20Current%20deepfake%20detection%20models%20operate%20as%20black%20boxes%2C%20offering%20a%20percentage%20score%20without%20explanation.%20This%20creates%20a%20dangerous%20reliance%20on%20opaque%20algorithms.%20The%20VITA-VQ%E2%84%A2%20system%20introduces%20%22Generative%20Friction%22%E2%80%94forcing%20the%20user%20to%20interact%20with%20the%20forensic%20evidence.%20When%20an%20AI%20generates%20a%20winter%20scene%20but%20fails%20to%20map%20the%20shadow%20vectors%20to%20the%20physical%20anchors%20of%20the%20trees%2C%20the%20VITA-VQ%20system%20exposes%20this%20optical%20failure.%20We%20must%20equip%20society%20with%20tools%20that%20explain%20*how*%20a%20visual%20manipulation%20fails%2C%20not%20just%20*if*%20it%20fails.%0A%0A%20%20%20%20%23%23%23%23%204.%20The%20Foundation%3A%2040%20Years%20of%20Visual%20Integrity%0A%20%20%20%20The%20De%20Cesare%20Protocol%20is%20not%20a%20reactionary%20tool%20built%20overnight%3B%20it%20is%20the%20culmination%20of%20a%20four-decade%20practice%20integrating%20visual%20art%2C%20structural%20architecture%2C%20and%20Bauhaus%20design%20philosophies.%20Rooted%20in%20the%20belief%20that%20true%20art%20and%20craft%20must%20align%20with%20physical%20and%20social%20reality%2C%20this%20protocol%20was%20forged%20through%20years%20of%20manual%20optical%20observation%20and%20community%20stewardship.%20It%20has%20now%20been%20translated%20into%20a%20machine-learning-ready%20framework%20optimized%20for%20local%2C%20edge-computed%20AI.%0A%0A%20%20%20%20%23%23%23%23%205.%20The%209-Pillar%20Hypergraph%20Architecture%0A%20%20%20%20The%20engine%20driving%20this%20interactive%20suite%20measures%20visual%20integrity%20across%20nine%20distinct%20domains.%20When%20an%20image%20is%20subjected%20to%20the%20protocol%2C%20the%20failure%20of%20any%20single%20pillar%20creates%20a%20structural%20collapse%20in%20the%20VeriGraf%E2%84%A2%E2%80%94a%20literal%20%22Bite%20from%20the%20Apple%22%20of%20truth%3A%0A%0A%20%20%20%20*%20**Physics%20(Anchoring%20%26%20Observation)%3A**%20Detection%20of%20gravity-plane%20violations%20and%20impossible%20light%2Fshadow%20vectors.%0A%20%20%20%20*%20**Context%20(Historical%20%26%20Semantic)%3A**%20Verification%20of%20temporal%20accuracy%20and%20rational%20geometry%20(e.g.%2C%20anatomical%20limits).%0A%20%20%20%20*%20**Digital%20(Provenance%20%26%20Visual%20Artifacts)%3A**%20Cryptographic%20hash%20tracking%20and%20Error%20Level%20Analysis%20(ELA)%20of%20pixel%20noise%20floors.%0A%0A%20%20%20%20*Proceed%20to%20the%20interactive%20dashboard%20below%20to%20engage%20the%20VITA-VQ%E2%84%A2%20Forensic%20Suite%20and%20analyze%20the%20visual%20evidence.*%0A%20%20%20%20---%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20import%20marimo%20as%20mo%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%0A%20%20%20%20import%20numpy%20as%20np%0A%20%20%20%20return%20mo%2C%20np%2C%20plt%0A%0A%0A%40app.cell%0Adef%20_(mo)%3A%0A%20%20%20%20%23%201.%20Define%20the%20UI%20Elements%0A%20%20%20%20image_upload%20%3D%20mo.ui.file(label%3D%22Upload%20Evidence%20(.jpg%2F.png)%22%2C%20kind%3D%22area%22)%0A%20%20%20%20physics_slider%20%3D%20mo.ui.slider(0%2C%20100%2C%20value%3D10%2C%20label%3D%22Physics%20Integrity%20(P2%2FP6)%22)%0A%20%20%20%20shadow_slider%20%3D%20mo.ui.slider(0%2C%20100%2C%20value%3D10%2C%20label%3D%22Shadow%2FLight%20Vector%20(P3)%22)%0A%0A%20%20%20%20%23%202.%20Display%20the%20Control%20Deck%0A%20%20%20%20mo.vstack(%5B%0A%20%20%20%20%20%20%20%20mo.md(%22%23%20VITA-VQ%E2%84%A2%20Forensic%20Suite%20v2.1%5Cn%23%23%23%20Step%201%3A%20Input%20%26%20Manual%20Overrides%22)%2C%0A%20%20%20%20%20%20%20%20image_upload%2C%0A%20%20%20%20%20%20%20%20mo.hstack(%5Bphysics_slider%2C%20shadow_slider%5D%2C%20gap%3D4)%0A%20%20%20%20%5D)%0A%20%20%20%20return%20image_upload%2C%20physics_slider%2C%20shadow_slider%0A%0A%0A%40app.cell%0Adef%20_(image_upload%2C%20mo%2C%20physics_slider%2C%20shadow_slider)%3A%0A%20%20%20%20%23%201.%20Baseline%20Scores%0A%20%20%20%20p1%2C%20p2%2C%20p3%2C%20p4%2C%20p5%2C%20p6%2C%20p7%2C%20p8%2C%20p9%20%3D%20%5B0.95%5D*9%0A%20%20%20%20status%20%3D%20%22VERIFIED%22%0A%20%20%20%20status_color%20%3D%20%22%23228B22%22%20%23%20Academic%20Forest%20Green%0A%0A%20%20%20%20%23%202.%20Image%20Extraction%20(Bulletproof%20logic%20for%20Marimo)%0A%20%20%20%20if%20image_upload.value%3A%0A%20%20%20%20%20%20%20%20try%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20Extracts%20raw%20bytes%20whether%20the%20upload%20is%20a%20list%2C%20tuple%2C%20or%20single%20object%0A%20%20%20%20%20%20%20%20%20%20%20%20raw_bytes%20%3D%20image_upload.value%5B0%5D.contents%20if%20isinstance(image_upload.value%2C%20(list%2C%20tuple))%20else%20image_upload.value.contents%0A%20%20%20%20%20%20%20%20%20%20%20%20evidence_display%20%3D%20mo.image(src%3Draw_bytes)%0A%20%20%20%20%20%20%20%20except%20Exception%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20evidence_display%20%3D%20mo.md(%22*(Error%20rendering%20image.%20Please%20re-upload.)*%22)%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20evidence_display%20%3D%20mo.md(%22*(Awaiting%20forensic%20image...)*%22)%0A%0A%20%20%20%20%23%203.%20The%20%22Bite%20from%20the%20Apple%22%20Logic%0A%20%20%20%20if%20physics_slider.value%20%3E%2060%20or%20shadow_slider.value%20%3E%2070%3A%0A%20%20%20%20%20%20%20%20p2%2C%20p6%20%3D%200.35%2C%200.45%0A%20%20%20%20%20%20%20%20p3%20%3D%201.0%20-%20(shadow_slider.value%20%2F%20100)%0A%20%20%20%20%20%20%20%20vq_score%20%3D%20(p2%20%2B%20p6%20%2B%20p3)%20%2F%203%0A%20%20%20%20%20%20%20%20status%20%3D%20%22SYNTHETIC%22%0A%20%20%20%20%20%20%20%20status_color%20%3D%20%22%23B22222%22%20%23%20Academic%20Firebrick%20Red%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20vq_score%20%3D%200.984%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20evidence_display%2C%0A%20%20%20%20%20%20%20%20p1%2C%0A%20%20%20%20%20%20%20%20p2%2C%0A%20%20%20%20%20%20%20%20p3%2C%0A%20%20%20%20%20%20%20%20p4%2C%0A%20%20%20%20%20%20%20%20p5%2C%0A%20%20%20%20%20%20%20%20p6%2C%0A%20%20%20%20%20%20%20%20p7%2C%0A%20%20%20%20%20%20%20%20p8%2C%0A%20%20%20%20%20%20%20%20p9%2C%0A%20%20%20%20%20%20%20%20status%2C%0A%20%20%20%20%20%20%20%20status_color%2C%0A%20%20%20%20%20%20%20%20vq_score%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell%0Adef%20_(%0A%20%20%20%20evidence_display%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20np%2C%0A%20%20%20%20p1%2C%0A%20%20%20%20p2%2C%0A%20%20%20%20p3%2C%0A%20%20%20%20p4%2C%0A%20%20%20%20p5%2C%0A%20%20%20%20p6%2C%0A%20%20%20%20p7%2C%0A%20%20%20%20p8%2C%0A%20%20%20%20p9%2C%0A%20%20%20%20plt%2C%0A%20%20%20%20status%2C%0A%20%20%20%20status_color%2C%0A%20%20%20%20vq_score%2C%0A)%3A%0A%20%20%20%20import%20matplotlib.patches%20as%20mpatches%0A%20%20%20%20from%20matplotlib.path%20import%20Path%0A%0A%20%20%20%20%23%201.%20Scientific%20Radar%20Setup%0A%20%20%20%20fig%2C%20ax%20%3D%20plt.subplots(figsize%3D(6%2C%206.5)%2C%20subplot_kw%3D%7B'projection'%3A%20'polar'%7D)%0A%20%20%20%20fig.patch.set_facecolor('%23FFFFFF')%20%0A%20%20%20%20fig.patch.set_alpha(0.0)%20%0A%20%20%20%20ax.set_facecolor('none')%20%0A%20%20%20%20ax.set_ylim(0%2C%201.0)%0A%0A%20%20%20%20%23%20Create%20space%20at%20the%20bottom%20so%20the%20VQ%20score%20doesn't%20cover%20the%20graph%0A%20%20%20%20plt.subplots_adjust(bottom%3D0.2)%0A%0A%20%20%20%20pillar_defs%20%3D%20%7B%0A%20%20%20%20%20%20%20%20'P1'%3A%20'Provenance'%2C%20'P2'%3A%20'Anchoring'%2C%20'P3'%3A%20'Observation'%2C%20%0A%20%20%20%20%20%20%20%20'P4'%3A%20'Historical'%2C%20'P5'%3A%20'Audible'%2C%20'P6'%3A%20'Visual'%2C%20%0A%20%20%20%20%20%20%20%20'P7'%3A%20'Contextual'%2C%20'P8'%3A%20'Linguistic'%2C%20'P9'%3A%20'Network'%0A%20%20%20%20%7D%0A%0A%20%20%20%20categories%20%3D%20%5Bf%22%7Bk%7D%3A%20%7Bv%7D%22%20for%20k%2C%20v%20in%20pillar_defs.items()%5D%0A%20%20%20%20N%20%3D%20len(categories)%0A%20%20%20%20angles%20%3D%20np.linspace(0%2C%202*np.pi%2C%20N%2C%20endpoint%3DFalse).tolist()%0A%20%20%20%20angles%20%2B%3D%20angles%5B%3A1%5D%0A%20%20%20%20chart_values%20%3D%20%5Bp1%2C%20p2%2C%20p3%2C%20p4%2C%20p5%2C%20p6%2C%20p7%2C%20p8%2C%20p9%5D%0A%20%20%20%20chart_values%20%2B%3D%20chart_values%5B%3A1%5D%0A%0A%20%20%20%20%23%202.%20Create%20the%20Radial%20Gradient%20Maps%20%0A%20%20%20%20r_grad%20%3D%20np.linspace(0%2C%201.0%2C%20100)%0A%20%20%20%20theta_grad%20%3D%20np.linspace(0%2C%202*np.pi%2C%20100)%0A%20%20%20%20R%2C%20Theta%20%3D%20np.meshgrid(r_grad%2C%20theta_grad)%0A%0A%20%20%20%20bg_mesh%20%3D%20ax.pcolormesh(Theta%2C%20R%2C%20R%2C%20cmap%3D'RdYlGn'%2C%20alpha%3D0.10%2C%20shading%3D'auto'%2C%20zorder%3D0)%0A%20%20%20%20fg_mesh%20%3D%20ax.pcolormesh(Theta%2C%20R%2C%20R%2C%20cmap%3D'RdYlGn'%2C%20alpha%3D0.75%2C%20shading%3D'auto'%2C%20zorder%3D1)%0A%0A%20%20%20%20%23%203.%20The%20%22Cookie%20Cutter%22%20%0A%20%20%20%20vertices%20%3D%20np.column_stack(%5Bangles%2C%20chart_values%5D)%0A%20%20%20%20clip_path%20%3D%20mpatches.PathPatch(Path(vertices)%2C%20transform%3Dax.transData%2C%20facecolor%3D'none'%2C%20edgecolor%3D'none')%0A%20%20%20%20ax.add_patch(clip_path)%0A%20%20%20%20fg_mesh.set_clip_path(clip_path)%0A%0A%20%20%20%20%23%204.%20Draw%20the%20defining%20border%20and%20grid%20(Enlarged%20Labels)%0A%20%20%20%20ax.set_xticks(angles%5B%3A-1%5D)%0A%20%20%20%20%23%20Font%20size%20increased%20to%2011%20for%20legibility%0A%20%20%20%20ax.set_xticklabels(categories%2C%20color%3D%22%23000000%22%2C%20fontfamily%3D'monospace'%2C%20fontsize%3D11%2C%20fontweight%3D'bold')%0A%20%20%20%20%23%20Pushes%20the%20labels%20slightly%20further%20out%20to%20prevent%20crowding%0A%20%20%20%20ax.tick_params(axis%3D'x'%2C%20pad%3D15)%0A%20%20%20%20ax.grid(True%2C%20color%3D%22%23AAAAAA%22%2C%20linestyle%3D'%3A'%2C%20linewidth%3D1.0%2C%20zorder%3D2)%20%0A%0A%20%20%20%20ax.plot(angles%2C%20chart_values%2C%20color%3D%22%23D4AF37%22%2C%20linewidth%3D3.5%2C%20zorder%3D3)%0A%0A%20%20%20%20%23%205.%20The%20VQ%E2%84%A2%20Trademark%20Logo%20%0A%20%20%20%20badge_html%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20style%3D%22border%3A%203px%20solid%20%7Bstatus_color%7D%3B%20border-radius%3A%2012px%3B%20padding%3A%2020px%3B%20text-align%3A%20center%3B%20background-color%3A%20white%3B%20min-width%3A%20150px%3B%20font-family%3A%20serif%3B%22%3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20style%3D%22font-size%3A%2014px%3B%20font-weight%3A%20bold%3B%20color%3A%20black%3B%20margin-bottom%3A%205px%3B%20text-transform%3A%20uppercase%3B%20letter-spacing%3A%201px%3B%22%3EVeracity%20Quotient%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20style%3D%22font-size%3A%2048px%3B%20font-weight%3A%20bold%3B%20color%3A%20%7Bstatus_color%7D%3B%20line-height%3A%201%3B%22%3EVQ%E2%84%A2%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20style%3D%22font-size%3A%2038px%3B%20font-weight%3A%20bold%3B%20color%3A%20%7Bstatus_color%7D%3B%20margin-top%3A%205px%3B%22%3E%7Bvq_score%3A.3f%7D%3C%2Fdiv%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20%23%20FIX%3A%20Use%20mo.Html%20to%20render%20the%20visual%20badge%2C%20not%20mo.as_html%0A%20%20%20%20vq_badge%20%3D%20mo.Html(badge_html)%0A%0A%20%20%20%20%23%206.%20Dynamic%20Integrity%20Matrix%0A%20%20%20%20matrix_table%20%3D%20mo.ui.table(%5B%0A%20%20%20%20%20%20%20%20%7B%22Pillar%22%3A%20k%2C%20%22Forensic%20Domain%22%3A%20v%2C%20%22Score%22%3A%20f%22%7Bval%3A.2f%7D%22%2C%20%22Status%22%3A%20%22PASS%22%20if%20val%20%3E%200.7%20else%20%22FAIL%22%7D%0A%20%20%20%20%20%20%20%20for%20(k%2C%20v)%2C%20val%20in%20zip(pillar_defs.items()%2C%20%5Bp1%2C%20p2%2C%20p3%2C%20p4%2C%20p5%2C%20p6%2C%20p7%2C%20p8%2C%20p9%5D)%0A%20%20%20%20%5D%2C%20label%3D%22De%20Cesare%20Protocol%3A%20Integrity%20Matrix%22)%0A%0A%20%20%20%20%23%207.%20Final%20Academic%20Layout%0A%20%20%20%20mo.vstack(%5B%0A%20%20%20%20%20%20%20%20mo.md(%22---%22)%2C%0A%20%20%20%20%20%20%20%20mo.md(%22%23%23%23%20Step%202%3A%20Forensic%20Output%22)%2C%0A%20%20%20%20%20%20%20%20mo.hstack(%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20LEFT%3A%20The%20Evidence%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.vstack(%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%23%23%20Fig%201.1%3A%20Evidence%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20evidence_display%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(f%22**JUDGMENT%3A**%20%7Bstatus%7D%22).style(%7B%22color%22%3A%20status_color%2C%20%22font-size%22%3A%20%2218px%22%2C%20%22font-weight%22%3A%20%22bold%22%7D)%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D).style(%7B%22padding%22%3A%20%2215px%22%2C%20%22border%22%3A%20%221px%20solid%20%23E0E0E0%22%2C%20%22background%22%3A%20%22%23FAFAFA%22%2C%20%22min-width%22%3A%20%22200px%22%7D)%2C%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20MIDDLE%3A%20The%20VeriGraf%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.as_html(fig)%2C%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20RIGHT%3A%20The%20Standalone%20VQ%E2%84%A2%20Certification%20Badge%0A%20%20%20%20%20%20%20%20%20%20%20%20vq_badge%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%5D%2C%20align%3D%22center%22%2C%20gap%3D4)%2C%0A%20%20%20%20%20%20%20%20mo.md(%22---%22)%2C%0A%20%20%20%20%20%20%20%20mo.md(%22%23%23%23%23%20Fig%201.2%3A%20Integrity%20Matrix%20Analysis%22)%2C%0A%20%20%20%20%20%20%20%20matrix_table%0A%20%20%20%20%5D)%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A
b1c50ba059bf5fe607fc926929ec0c49af9c81d841f7728941179267be9eed3e