{"version":"matsorik.provenance.demo.v1","project":{"name":"Matsorik","product":"Auditable AI Math Lessons","reference_case":"q26_visual_area_graphs","canonical_pipeline":"matsorik.teacher_video_pipeline.v1","integration":"The existing validated lesson pipeline is wrapped with a new Genblaze run graph and Backblaze B2 artifact layer built for this challenge."},"integrity":{"canonical_locks_valid":true,"locked_file_count":13,"all_stage_manifests_valid":true,"tests_passed":93,"tests_total":93},"metrics":{"stage_count":5,"artifact_count":17,"total_artifact_bytes":8770389,"duration_seconds":131.08,"narrated_beats":6,"solver_steps":4,"resolution":[1600,900],"historical_full_api_cost_usd":0.35274,"new_model_api_calls_for_import":0,"new_model_api_cost_usd_for_import":0.0},"storage":{"provider":"Backblaze B2","bucket":"matsorik-genblaze-tahir-2026","region":"us-east-005","prefix":"matsorik","key_strategy":"content-addressed SHA-256 assets","delivery":"private objects via short-lived signed URLs"},"stages":[{"order":1,"stage":"formalizer","run_id":"4df9f71e-1dde-4d9c-9c18-0f9245c6c7e8","parent_run_id":null,"provider":"azure-openai-canonical","model":"azure-openai/gpt-5-6-sol-v3.4-direct","historical_generation_cost_usd":0.23432,"new_model_api_calls":0,"gate":{"valid":true,"solver_gate":"pass","facts":7,"source_sha256":"0f7121e705d4a58b7fe0112a18261dbd4299d74e06b5e7e814ef87423cbb6311"},"manifest":{"storage_key":"matsorik/manifests/4df9f71e-1dde-4d9c-9c18-0f9245c6c7e8.json","canonical_hash":"ce30954d3c582ad4092a2611676c01fd458555c9f0c59ebb723d6ebd4d1e2a27","valid":true},"assets":[{"role":"source-problem-image","storage_key":"matsorik/assets/0f/71/0f7121e705d4a58b7fe0112a18261dbd4299d74e06b5e7e814ef87423cbb6311.svg","bytes":4245,"sha256":"0f7121e705d4a58b7fe0112a18261dbd4299d74e06b5e7e814ef87423cbb6311","valid":true,"media_type":"image/svg+xml"},{"role":"formalized-scene-svg","storage_key":"matsorik/assets/4d/76/4d76d495d16f2aac0a735a17c8ca98ef6799e0c3263d9d3163e24ad150ddea1e.svg","bytes":3679,"sha256":"4d76d495d16f2aac0a735a17c8ca98ef6799e0c3263d9d3163e24ad150ddea1e","valid":true,"media_type":"image/svg+xml"},{"role":"grounded-solver-input","storage_key":"matsorik/assets/39/4d/394d187d5f1a2d95aafbd64465831dbe5f87fa36a8af5382a4f262a0f4156d34.json","bytes":475,"sha256":"394d187d5f1a2d95aafbd64465831dbe5f87fa36a8af5382a4f262a0f4156d34","valid":true,"media_type":"application/json"},{"role":"formalizer-gate","storage_key":"matsorik/assets/c6/e7/c6e7c0cda1b122b9dfe66de2ad4d26ac36f9353eb2ad037deec6cc2cf8c0cf2a.json","bytes":189,"sha256":"c6e7c0cda1b122b9dfe66de2ad4d26ac36f9353eb2ad037deec6cc2cf8c0cf2a","valid":true,"media_type":"application/json"}]},{"order":2,"stage":"solver","run_id":"6aa7dcf2-0f22-462c-a468-86b4e20da75e","parent_run_id":"4df9f71e-1dde-4d9c-9c18-0f9245c6c7e8","provider":"azure-openai-canonical","model":"azure-openai/gpt-5-6-sol-fact-grounded","historical_generation_cost_usd":0.11842,"new_model_api_calls":0,"gate":{"valid":true,"status":"solved","answer":"a = 2","steps":4},"manifest":{"storage_key":"matsorik/manifests/6aa7dcf2-0f22-462c-a468-86b4e20da75e.json","canonical_hash":"dea13fed56b8dd2f375341a9579c93bb4a2ff77dde788b07fc037843c29f8920","valid":true},"assets":[{"role":"natural-teacher-solution","storage_key":"matsorik/assets/85/cb/85cb244cfd9e46861baa56bb70d3944da12457c571d461f0609e70cc6172eabc.json","bytes":1629,"sha256":"85cb244cfd9e46861baa56bb70d3944da12457c571d461f0609e70cc6172eabc","valid":true,"media_type":"application/json"},{"role":"solver-gate","storage_key":"matsorik/assets/aa/41/aa41f99172e5835cf796bf55e29b66e4990144a9719686eb48a1e78777333edf.json","bytes":83,"sha256":"aa41f99172e5835cf796bf55e29b66e4990144a9719686eb48a1e78777333edf","valid":true,"media_type":"application/json"},{"role":"teacher-beat-timeline","storage_key":"matsorik/assets/79/77/79775d2fa84e00e04e97c28d12dbc1f3235a35713d413cc8ffa709cadca6c935.json","bytes":941,"sha256":"79775d2fa84e00e04e97c28d12dbc1f3235a35713d413cc8ffa709cadca6c935","valid":true,"media_type":"application/json"}]},{"order":3,"stage":"presentation","run_id":"be864abe-5d40-4e33-b230-332c19221cdc","parent_run_id":"6aa7dcf2-0f22-462c-a468-86b4e20da75e","provider":"matsorik-deterministic-renderer","model":"matsorik/solvecanvas-english-board-v1","historical_generation_cost_usd":0.0,"new_model_api_calls":0,"gate":{"valid":true,"frames":4,"camera_is_bbox_driven":true,"model_coordinates_used":false},"manifest":{"storage_key":"matsorik/manifests/be864abe-5d40-4e33-b230-332c19221cdc.json","canonical_hash":"f6f6b0865ac4f9641a200deff35e26d025fe9bfb0dc6aedc11dbdb408c9d6824","valid":true},"assets":[{"role":"progressive-visibility-plan","storage_key":"matsorik/assets/9b/cf/9bcfccf6d0559de664e74dc7e112d8ef6f7273efe26c46ea7760aa095743e8f7.json","bytes":739,"sha256":"9bcfccf6d0559de664e74dc7e112d8ef6f7273efe26c46ea7760aa095743e8f7","valid":true,"media_type":"application/json"},{"role":"presentation-preview","storage_key":"matsorik/assets/8b/15/8b1520f65fd1d4b7cf7482b9771b879eefeaca55233182e23cd2182c93fc31e4.png","bytes":144739,"sha256":"8b1520f65fd1d4b7cf7482b9771b879eefeaca55233182e23cd2182c93fc31e4","valid":true,"media_type":"image/png"},{"role":"presentation-gate","storage_key":"matsorik/assets/19/ee/19ee96b7b4bf4ff484d0e810eb8d3920e97c62d83f56c0c1ff76f2fa5894e060.json","bytes":109,"sha256":"19ee96b7b4bf4ff484d0e810eb8d3920e97c62d83f56c0c1ff76f2fa5894e060","valid":true,"media_type":"application/json"}]},{"order":4,"stage":"tts","run_id":"18303c3c-633f-492f-9094-df3fe4f7e2cb","parent_run_id":"be864abe-5d40-4e33-b230-332c19221cdc","provider":"solvecanvas-english-narration","model":"solvecanvas/curated-en-us-narration-v1","historical_generation_cost_usd":0.0,"new_model_api_calls":0,"gate":{"valid":true,"clips":6,"duration_seconds":131.08},"manifest":{"storage_key":"matsorik/manifests/18303c3c-633f-492f-9094-df3fe4f7e2cb.json","canonical_hash":"0c7052bcabfc76b48694b93d0f5d4b73fac2c9da03dfd8982ba27fb1e55becd7","valid":true},"assets":[{"role":"tts-batch-manifest","storage_key":"matsorik/assets/03/4a/034ac47b8e2b40b38e0379edd99ace5bc96c2654c0f2cc46811c12d0d2c7058c.json","bytes":124,"sha256":"034ac47b8e2b40b38e0379edd99ace5bc96c2654c0f2cc46811c12d0d2c7058c","valid":true,"media_type":"application/json"},{"role":"full-narration-audio","storage_key":"matsorik/assets/53/e8/53e8bb422644cb71e80647d068bc6c6c7042bfb3bd50f0d60d1b74373477a337.wav","bytes":6309966,"sha256":"53e8bb422644cb71e80647d068bc6c6c7042bfb3bd50f0d60d1b74373477a337","valid":true,"media_type":"audio/wav"},{"role":"narration-subtitles","storage_key":"matsorik/assets/20/eb/20eba143e32c79d40a4788daec7806dd3b4059bbdb007c91a19e9eaf085ff2d5.vtt","bytes":1603,"sha256":"20eba143e32c79d40a4788daec7806dd3b4059bbdb007c91a19e9eaf085ff2d5","valid":true,"media_type":"text/vtt"}]},{"order":5,"stage":"video","run_id":"f4fa7783-ff77-4ccb-b378-9c944c119d5c","parent_run_id":"18303c3c-633f-492f-9094-df3fe4f7e2cb","provider":"matsorik-deterministic-video-renderer","model":"matsorik/solvecanvas-english-video-v1","historical_generation_cost_usd":0.0,"new_model_api_calls":0,"gate":{"valid":true,"video_bytes":2298187,"duration_seconds":131.08,"resolution":[1600,900],"fps":24,"beats":6,"full_decode_pass":true},"manifest":{"storage_key":"matsorik/manifests/f4fa7783-ff77-4ccb-b378-9c944c119d5c.json","canonical_hash":"ec45a14f3d898d7807623009232dff58e5a4fdd5d12c6326ab6ff81401158568","valid":true},"assets":[{"role":"final-teacher-video","storage_key":"matsorik/assets/e3/02/e3020d1511b8784ce07a62d9352b1ba91c6634e568c747d907ae93646ef3201e.mp4","bytes":2298187,"sha256":"e3020d1511b8784ce07a62d9352b1ba91c6634e568c747d907ae93646ef3201e","valid":true,"media_type":"video/mp4"},{"role":"video-gate","storage_key":"matsorik/assets/91/eb/91eb6452f866e59447e19b3ad0188288959cb58af35f9f6d752da0d6c120afcd.json","bytes":313,"sha256":"91eb6452f866e59447e19b3ad0188288959cb58af35f9f6d752da0d6c120afcd","valid":true,"media_type":"application/json"},{"role":"qti-3-package","storage_key":"matsorik/assets/c6/08/c608f0757478ddc3324316d161221a71f303b197bc0ae08f545f6e5576838fa5.zip","bytes":2787,"sha256":"c608f0757478ddc3324316d161221a71f303b197bc0ae08f545f6e5576838fa5","valid":true,"media_type":"application/zip"},{"role":"accessibility-metadata","storage_key":"matsorik/assets/8a/1d/8a1de8487d234a3ca4365cd9b615e5a5352843f03a82dffd68e860f5b6824a26.json","bytes":581,"sha256":"8a1de8487d234a3ca4365cd9b615e5a5352843f03a82dffd68e860f5b6824a26","valid":true,"media_type":"application/json"}]}],"final_video":{"role":"final-teacher-video","bytes":2298187,"sha256":"e3020d1511b8784ce07a62d9352b1ba91c6634e568c747d907ae93646ef3201e","valid":true},"prepared_run":{"lesson_id":"q26_visual_area_graphs","language":"en-US","answer":"a = 2","facts":["a > 0.","f and g are continuous on the real numbers.","The signed integral of f' from -a to 0 is -5.","The signed integral of g' from -a to 0 is 7.","For x > 0, f'(x) = 2a + 1.","For x > 0, g'(x) = a - 3.","f(-a) = g(-a) and f(a) = g(a)."],"steps":[{"number":1,"title":"Split the change in f at zero","explanation":"The signed area contributes -5 on [-a, 0], while the constant derivative contributes a(2a + 1) on [0, a].","board":["f(a) - f(-a) = integral[-a,0] f'(x) dx + integral[0,a] f'(x) dx","f(a) - f(-a) = -5 + a(2a + 1)","f(a) - f(-a) = 2a^2 + a - 5"],"claim":"D01: f(a) - f(-a) = 2a^2 + a - 5"},{"number":2,"title":"Repeat the change calculation for g","explanation":"The left signed area is 7 and g'(x) = a - 3 is constant from 0 to a.","board":["g(a) - g(-a) = 7 + a(a - 3)","g(a) - g(-a) = a^2 - 3a + 7"],"claim":"D02: g(a) - g(-a) = a^2 - 3a + 7"},{"number":3,"title":"Use the two intersection points","explanation":"Because f and g agree at both endpoints, their net changes over [-a, a] must be equal.","board":["f(a) - f(-a) = g(a) - g(-a)","2a^2 + a - 5 = a^2 - 3a + 7","a^2 + 4a - 12 = 0"],"claim":"D03: a^2 + 4a - 12 = 0"},{"number":4,"title":"Factor and enforce a > 0","explanation":"Only the positive root satisfies the condition in the problem.","board":["(a + 6)(a - 2) = 0","a = -6 or a = 2","a > 0, therefore a = 2"],"claim":"D04: a = 2"}],"source_asset_sha256":"0f7121e705d4a58b7fe0112a18261dbd4299d74e06b5e7e814ef87423cbb6311","caption_asset_sha256":"20eba143e32c79d40a4788daec7806dd3b4059bbdb007c91a19e9eaf085ff2d5","poster_asset_sha256":"d4a013c6cf737c271b800c2730c8af4c10c9b057cc5d1a1152d097ad305e289a","qti_asset_sha256":"c608f0757478ddc3324316d161221a71f303b197bc0ae08f545f6e5576838fa5","accessibility_asset_sha256":"8a1de8487d234a3ca4365cd9b615e5a5352843f03a82dffd68e860f5b6824a26","delivery_outputs":["narrated MP4","timed WebVTT captions","QTI 3.0 assessment package","structured four-step solution"],"replay_disclosure":"Recorded verified run replay; starts no new model inference and preserves the original Genblaze run IDs and B2 hashes."},"lesson_library":{"version":"matsorik.lesson-library.v1","language":"en-US","lesson_count":11,"step_count":63,"topic_count":9,"source":"SolveCanvas curated visual lesson library","lessons":[{"id":"q06_visual_function_graph","slug":"composing-linear-functions-from-a-grid","title":"Composing linear functions from a grid","topic":"Functions","difficulty":"Advanced","step_count":6,"verdict":"verified","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/6e/6e5e1f9f37cae9bb68e2d65bf0976a76e6b34b88089e8b8e864182d7995b49a7.mp4","bytes":2523387,"sha256":"6e5e1f9f37cae9bb68e2d65bf0976a76e6b34b88089e8b8e864182d7995b49a7","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/54/54931fe03215b52fa3fc40582bbfce6be7362bf02948d66a7c363e9f53220933.webp","bytes":44384,"sha256":"54931fe03215b52fa3fc40582bbfce6be7362bf02948d66a7c363e9f53220933","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/fd/fd875ade028d9788bea40e60882d2cfed28c72d7fdb505fba6d49d6e542e8d31.vtt","bytes":1660,"sha256":"fd875ade028d9788bea40e60882d2cfed28c72d7fdb505fba6d49d6e542e8d31","valid":true,"media_type":"text/vtt"}}},{"id":"q10_text_polynomial_remainder","slug":"polynomial-roots-from-divisibility","title":"Polynomial roots hidden in divisibility","topic":"Polynomials","difficulty":"Advanced","step_count":6,"verdict":"verified","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/b6/b626eb7052b9490d34deefdb0b02bf59d6beb3eef2daf1785079992a5b42afb1.mp4","bytes":3467026,"sha256":"b626eb7052b9490d34deefdb0b02bf59d6beb3eef2daf1785079992a5b42afb1","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/58/583e0971111b985f5403e50f7990fb54254263b18d1cb989215d451db9f5a98b.webp","bytes":55740,"sha256":"583e0971111b985f5403e50f7990fb54254263b18d1cb989215d451db9f5a98b","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/82/82139231363c9e318581357e0cbd2ef8b2f05dd14e95ff6227e787b0c4913615.vtt","bytes":2124,"sha256":"82139231363c9e318581357e0cbd2ef8b2f05dd14e95ff6227e787b0c4913615","valid":true,"media_type":"text/vtt"}}},{"id":"q11_visual_parabola_graphs","slug":"reading-coefficients-from-parabolas","title":"Reading coefficients from translated parabolas","topic":"Parabolas","difficulty":"Advanced","step_count":6,"verdict":"verified","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/41/4115f8735b2e0e348aed0aec6950a1283642c99e9f6d1fd8cf707befaf1c1053.mp4","bytes":2615788,"sha256":"4115f8735b2e0e348aed0aec6950a1283642c99e9f6d1fd8cf707befaf1c1053","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/7e/7e2c750639186d75b496c1c8f0420a12f9746ea2aec5bfdca8408f062784cb4c.webp","bytes":40214,"sha256":"7e2c750639186d75b496c1c8f0420a12f9746ea2aec5bfdca8408f062784cb4c","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/7c/7c3ec0284b6720929ff6d148bd32c905b25a53dd458d51f0be1c9cafbac01939.vtt","bytes":1813,"sha256":"7c3ec0284b6720929ff6d148bd32c905b25a53dd458d51f0be1c9cafbac01939","valid":true,"media_type":"text/vtt"}}},{"id":"q12_visual_coffee_probability","slug":"probability-across-coffee-machines","title":"Probability across coffee machines","topic":"Probability","difficulty":"Intermediate","step_count":4,"verdict":"verified","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/2d/2db7b9f766845be089ade9c4f32852954bba677d763222e16c65f81e8ccf4208.mp4","bytes":1968776,"sha256":"2db7b9f766845be089ade9c4f32852954bba677d763222e16c65f81e8ccf4208","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/b5/b598b2024b674ed67c6276057ef43d18dd1118f24cd544b0a7dc63ffeecfeb31.webp","bytes":49486,"sha256":"b598b2024b674ed67c6276057ef43d18dd1118f24cd544b0a7dc63ffeecfeb31","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/59/59d4781c5120bfaed47a16d8f552484e771f82f7951dce62b1ed7093842a5435.vtt","bytes":1526,"sha256":"59d4781c5120bfaed47a16d8f552484e771f82f7951dce62b1ed7093842a5435","valid":true,"media_type":"text/vtt"}}},{"id":"q18_text_limit_relation","slug":"detecting-an-underdetermined-limit","title":"Detecting an underdetermined limit","topic":"Limits","difficulty":"Expert","step_count":10,"verdict":"source-ambiguous","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/8d/8d360021186a5ddfb8a2b1abf225932f6efb2ce6aa63c2bea2c730ecc647f4d0.mp4","bytes":3779013,"sha256":"8d360021186a5ddfb8a2b1abf225932f6efb2ce6aa63c2bea2c730ecc647f4d0","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/5f/5f4ef7f079d269f3294a7faa7309f03beb2839c11d712e3d64640a96850d6a40.webp","bytes":28950,"sha256":"5f4ef7f079d269f3294a7faa7309f03beb2839c11d712e3d64640a96850d6a40","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/53/535b0be777136cdeac0dc990266ddf8774b71b1bebc6aaa5ee0f633d1dead603.vtt","bytes":2787,"sha256":"535b0be777136cdeac0dc990266ddf8774b71b1bebc6aaa5ee0f633d1dead603","valid":true,"media_type":"text/vtt"}}},{"id":"q19_visual_discontinuous_function","slug":"continuity-under-transformations","title":"Continuity under function transformations","topic":"Continuity","difficulty":"Advanced","step_count":6,"verdict":"verified","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/c2/c23fdbc0dac8799811ff90c06692b4a9ab79ea211fe42af71f1fae6e3c0b5acd.mp4","bytes":3134230,"sha256":"c23fdbc0dac8799811ff90c06692b4a9ab79ea211fe42af71f1fae6e3c0b5acd","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/f8/f8bc80cec363150e74a545c4baf645846a1b14839829c0a96df6fede6c0bbb85.webp","bytes":37346,"sha256":"f8bc80cec363150e74a545c4baf645846a1b14839829c0a96df6fede6c0bbb85","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/6e/6ec0217c2420ad2c9b068c6e42acdcbe2661b366d545dd249274a24af51f7c94.vtt","bytes":2240,"sha256":"6ec0217c2420ad2c9b068c6e42acdcbe2661b366d545dd249274a24af51f7c94","valid":true,"media_type":"text/vtt"}}},{"id":"q20_text_functional_equation","slug":"differentiating-a-functional-equation","title":"Differentiating a functional equation","topic":"Derivatives","difficulty":"Advanced","step_count":5,"verdict":"choice-resolved","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/42/42da601fced4a11700376487dea040311002e347d1d620dc7672037b356d68a5.mp4","bytes":2304827,"sha256":"42da601fced4a11700376487dea040311002e347d1d620dc7672037b356d68a5","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/74/74f913c832c260f72a5675c4c10135fed01657066611d8ec6a9fdea00595286e.webp","bytes":34034,"sha256":"74f913c832c260f72a5675c4c10135fed01657066611d8ec6a9fdea00595286e","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/28/28aefce7b54ea2fda4355c93f2c5dcda375c100e08e8324a58168352f584edca.vtt","bytes":1615,"sha256":"28aefce7b54ea2fda4355c93f2c5dcda375c100e08e8324a58168352f584edca","valid":true,"media_type":"text/vtt"}}},{"id":"q21_text_monotonicity","slug":"tangency-and-monotonicity","title":"Tangency and monotonicity","topic":"Derivatives","difficulty":"Advanced","step_count":5,"verdict":"verified","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/2a/2a235f582b956820ff6eccb0e6607aebe15410ac54999f66f93e3d2fed095eaf.mp4","bytes":2865438,"sha256":"2a235f582b956820ff6eccb0e6607aebe15410ac54999f66f93e3d2fed095eaf","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/6b/6b1a3b57b59f4835e89d85a9fcf50d666c15ba52cd9e56f9024af4afaf040355.webp","bytes":41820,"sha256":"6b1a3b57b59f4835e89d85a9fcf50d666c15ba52cd9e56f9024af4afaf040355","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/e1/e186b88006143e60304478dc2bf727f98c5d27478884234fa2f62237a9b810b8.vtt","bytes":2067,"sha256":"e186b88006143e60304478dc2bf727f98c5d27478884234fa2f62237a9b810b8","valid":true,"media_type":"text/vtt"}}},{"id":"q25_visual_piecewise_integral","slug":"scaling-a-piecewise-integral","title":"Scaling a piecewise integral","topic":"Integrals","difficulty":"Advanced","step_count":7,"verdict":"verified","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/27/271e5a985edcc2621f85005ff20b1b4030657966e67cd4e9b8e13c39c6c5a69e.mp4","bytes":2728376,"sha256":"271e5a985edcc2621f85005ff20b1b4030657966e67cd4e9b8e13c39c6c5a69e","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/12/12b3ea1baa48e80e0310f6ec919d0cc01b70a414a0368dfc4b59d9e37ad19548.webp","bytes":35688,"sha256":"12b3ea1baa48e80e0310f6ec919d0cc01b70a414a0368dfc4b59d9e37ad19548","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/25/25270c41a1e7fb911d879ea10e9c37c35c908661dfdf759cea2c1eafa7f9a4cf.vtt","bytes":1891,"sha256":"25270c41a1e7fb911d879ea10e9c37c35c908661dfdf759cea2c1eafa7f9a4cf","valid":true,"media_type":"text/vtt"}}},{"id":"q26_visual_area_graphs","slug":"derivatives-signed-areas-and-intersections","title":"Derivatives, signed areas, and intersections","topic":"Integral Calculus","difficulty":"Advanced","step_count":4,"verdict":"verified","featured":true,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/e3/e3020d1511b8784ce07a62d9352b1ba91c6634e568c747d907ae93646ef3201e.mp4","bytes":2298187,"sha256":"e3020d1511b8784ce07a62d9352b1ba91c6634e568c747d907ae93646ef3201e","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/d4/d4a013c6cf737c271b800c2730c8af4c10c9b057cc5d1a1152d097ad305e289a.webp","bytes":33992,"sha256":"d4a013c6cf737c271b800c2730c8af4c10c9b057cc5d1a1152d097ad305e289a","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/20/20eba143e32c79d40a4788daec7806dd3b4059bbdb007c91a19e9eaf085ff2d5.vtt","bytes":1603,"sha256":"20eba143e32c79d40a4788daec7806dd3b4059bbdb007c91a19e9eaf085ff2d5","valid":true,"media_type":"text/vtt"}}},{"id":"reference_folded_paper","slug":"reflections-tangents-and-the-product-rule","title":"Reflections, tangents, and the product rule","topic":"Derivatives","difficulty":"Expert","step_count":4,"verdict":"verified","featured":false,"assets":{"video":{"role":"lesson-video","storage_key":"matsorik/jobs/library/51/515c751b7063eb43613251c8cbdda061bd983b274fda1372b4466d5c6f2145b0.mp4","bytes":2069682,"sha256":"515c751b7063eb43613251c8cbdda061bd983b274fda1372b4466d5c6f2145b0","valid":true,"media_type":"video/mp4"},"poster":{"role":"lesson-poster","storage_key":"matsorik/jobs/library/64/646169b05a300dc718d0c194e4bb96d49ef7e4d2f87bf5747204b7f93c7cf47f.webp","bytes":35646,"sha256":"646169b05a300dc718d0c194e4bb96d49ef7e4d2f87bf5747204b7f93c7cf47f","valid":true,"media_type":"image/webp"},"captions":{"role":"lesson-captions","storage_key":"matsorik/jobs/library/b7/b71035a99e51ba6b7273fc99eafc9660ddcb35aea1a2b6bf7acd64ee861c1602.vtt","bytes":1473,"sha256":"b71035a99e51ba6b7273fc99eafc9660ddcb35aea1a2b6bf7acd64ee861c1602","valid":true,"media_type":"text/vtt"}}}]}}