WEBVTT
Kind: captions
Language: en

00:00:01.160 --> 00:00:10.589 align:start position:0%
 
[Music]

00:00:10.589 --> 00:00:10.599 align:start position:0%
 
 

00:00:10.599 --> 00:00:13.910 align:start position:0%
 
good<00:00:10.759><c> morning</c><00:00:11.519><c> everyone</c><00:00:12.519><c> so</c><00:00:12.759><c> today</c><00:00:13.200><c> I'll</c><00:00:13.679><c> talk</c>

00:00:13.910 --> 00:00:13.920 align:start position:0%
good morning everyone so today I'll talk
 

00:00:13.920 --> 00:00:15.990 align:start position:0%
good morning everyone so today I'll talk
about<00:00:14.480><c> fuzzing</c><00:00:15.040><c> for</c><00:00:15.320><c> zero</c><00:00:15.639><c> knowledge</c>

00:00:15.990 --> 00:00:16.000 align:start position:0%
about fuzzing for zero knowledge
 

00:00:16.000 --> 00:00:18.150 align:start position:0%
about fuzzing for zero knowledge
infrastructure<00:00:16.840><c> and</c><00:00:17.039><c> this</c><00:00:17.160><c> is</c><00:00:17.359><c> Joint</c><00:00:17.680><c> work</c>

00:00:18.150 --> 00:00:18.160 align:start position:0%
infrastructure and this is Joint work
 

00:00:18.160 --> 00:00:20.750 align:start position:0%
infrastructure and this is Joint work
with<00:00:18.400><c> my</c><00:00:18.920><c> collaborators</c><00:00:19.560><c> from</c><00:00:19.880><c> the</c><00:00:20.199><c> Technical</c>

00:00:20.750 --> 00:00:20.760 align:start position:0%
with my collaborators from the Technical
 

00:00:20.760 --> 00:00:22.790 align:start position:0%
with my collaborators from the Technical
University<00:00:21.480><c> of</c>

00:00:22.790 --> 00:00:22.800 align:start position:0%
University of
 

00:00:22.800 --> 00:00:26.109 align:start position:0%
University of
Vienna<00:00:23.800><c> so</c><00:00:24.760><c> just</c><00:00:24.920><c> to</c><00:00:25.119><c> kind</c><00:00:25.279><c> of</c><00:00:25.599><c> make</c><00:00:25.760><c> sure</c><00:00:26.000><c> we</c>

00:00:26.109 --> 00:00:26.119 align:start position:0%
Vienna so just to kind of make sure we
 

00:00:26.119 --> 00:00:29.990 align:start position:0%
Vienna so just to kind of make sure we
are<00:00:26.320><c> all</c><00:00:26.720><c> on</c><00:00:26.840><c> the</c><00:00:27.000><c> same</c><00:00:27.240><c> page</c><00:00:28.039><c> um</c><00:00:28.760><c> let's</c><00:00:29.480><c> have</c><00:00:29.640><c> a</c>

00:00:29.990 --> 00:00:30.000 align:start position:0%
are all on the same page um let's have a
 

00:00:30.000 --> 00:00:31.830 align:start position:0%
are all on the same page um let's have a
short<00:00:30.279><c> definition</c><00:00:30.640><c> of</c><00:00:30.800><c> what</c><00:00:30.920><c> I</c><00:00:31.359><c> understand</c><00:00:31.640><c> by</c>

00:00:31.830 --> 00:00:31.840 align:start position:0%
short definition of what I understand by
 

00:00:31.840 --> 00:00:35.389 align:start position:0%
short definition of what I understand by
zero<00:00:32.160><c> knowledge</c><00:00:33.440><c> infrastructure</c><00:00:34.440><c> so</c><00:00:35.120><c> uh</c><00:00:35.200><c> for</c>

00:00:35.389 --> 00:00:35.399 align:start position:0%
zero knowledge infrastructure so uh for
 

00:00:35.399 --> 00:00:39.069 align:start position:0%
zero knowledge infrastructure so uh for
this<00:00:36.120><c> talk</c><00:00:36.680><c> I'll</c><00:00:37.600><c> um</c><00:00:37.960><c> Define</c><00:00:38.480><c> zero</c><00:00:38.800><c> knowledge</c>

00:00:39.069 --> 00:00:39.079 align:start position:0%
this talk I'll um Define zero knowledge
 

00:00:39.079 --> 00:00:41.190 align:start position:0%
this talk I'll um Define zero knowledge
infrastructure<00:00:39.840><c> as</c><00:00:40.200><c> software</c><00:00:40.640><c> components</c>

00:00:41.190 --> 00:00:41.200 align:start position:0%
infrastructure as software components
 

00:00:41.200 --> 00:00:44.029 align:start position:0%
infrastructure as software components
that<00:00:41.280><c> are</c><00:00:41.440><c> used</c><00:00:41.680><c> for</c><00:00:42.039><c> compiling</c><00:00:43.039><c> executing</c>

00:00:44.029 --> 00:00:44.039 align:start position:0%
that are used for compiling executing
 

00:00:44.039 --> 00:00:47.549 align:start position:0%
that are used for compiling executing
proving<00:00:44.480><c> and</c><00:00:44.680><c> verifying</c><00:00:45.160><c> ZK</c><00:00:46.320><c> circuits</c><00:00:47.320><c> so</c>

00:00:47.549 --> 00:00:47.559 align:start position:0%
proving and verifying ZK circuits so
 

00:00:47.559 --> 00:00:50.430 align:start position:0%
proving and verifying ZK circuits so
examples<00:00:48.360><c> would</c><00:00:48.559><c> be</c><00:00:49.559><c> the</c><00:00:49.879><c> processing</c>

00:00:50.430 --> 00:00:50.440 align:start position:0%
examples would be the processing
 

00:00:50.440 --> 00:00:53.110 align:start position:0%
examples would be the processing
pipelines<00:00:50.920><c> that</c><00:00:51.000><c> are</c><00:00:51.160><c> commonly</c><00:00:51.559><c> used</c><00:00:52.000><c> by</c><00:00:52.960><c> uh</c>

00:00:53.110 --> 00:00:53.120 align:start position:0%
pipelines that are commonly used by uh
 

00:00:53.120 --> 00:00:57.349 align:start position:0%
pipelines that are commonly used by uh
dsls<00:00:53.680><c> for</c><00:00:54.000><c> describing</c><00:00:54.680><c> ZK</c><00:00:55.600><c> uh</c><00:00:55.879><c> circuits</c><00:00:56.879><c> or</c>

00:00:57.349 --> 00:00:57.359 align:start position:0%
dsls for describing ZK uh circuits or
 

00:00:57.359 --> 00:00:59.229 align:start position:0%
dsls for describing ZK uh circuits or
maybe<00:00:57.800><c> in</c><00:00:57.920><c> the</c><00:00:58.039><c> future</c><00:00:58.320><c> we'll</c><00:00:58.559><c> also</c><00:00:58.800><c> look</c><00:00:58.960><c> at</c>

00:00:59.229 --> 00:00:59.239 align:start position:0%
maybe in the future we'll also look at
 

00:00:59.239 --> 00:01:02.509 align:start position:0%
maybe in the future we'll also look at
entire<00:00:59.600><c> ZK</c>

00:01:02.509 --> 00:01:02.519 align:start position:0%
 
 

00:01:02.519 --> 00:01:06.630 align:start position:0%
 
EVMS<00:01:03.600><c> so</c><00:01:04.600><c> um</c><00:01:04.879><c> with</c><00:01:05.080><c> this</c><00:01:05.199><c> out</c><00:01:05.360><c> of</c><00:01:05.479><c> the</c><00:01:05.600><c> way</c><00:01:06.320><c> um</c>

00:01:06.630 --> 00:01:06.640 align:start position:0%
EVMS so um with this out of the way um
 

00:01:06.640 --> 00:01:09.550 align:start position:0%
EVMS so um with this out of the way um
let's<00:01:07.640><c> um</c><00:01:08.240><c> look</c><00:01:08.479><c> at</c><00:01:08.880><c> why</c><00:01:09.119><c> this</c><00:01:09.280><c> is</c><00:01:09.400><c> an</c>

00:01:09.550 --> 00:01:09.560 align:start position:0%
let's um look at why this is an
 

00:01:09.560 --> 00:01:12.590 align:start position:0%
let's um look at why this is an
important<00:01:10.000><c> topic</c><00:01:10.400><c> and</c><00:01:10.680><c> why</c><00:01:11.640><c> um</c><00:01:11.880><c> more</c><00:01:12.159><c> people</c>

00:01:12.590 --> 00:01:12.600 align:start position:0%
important topic and why um more people
 

00:01:12.600 --> 00:01:15.710 align:start position:0%
important topic and why um more people
should<00:01:12.799><c> be</c><00:01:12.960><c> doing</c><00:01:13.280><c> this</c><00:01:14.280><c> well</c><00:01:15.040><c> first</c><00:01:15.400><c> zero</c>

00:01:15.710 --> 00:01:15.720 align:start position:0%
should be doing this well first zero
 

00:01:15.720 --> 00:01:17.550 align:start position:0%
should be doing this well first zero
knowledge<00:01:16.080><c> infrastructure</c><00:01:16.799><c> is</c><00:01:17.200><c> highly</c>

00:01:17.550 --> 00:01:17.560 align:start position:0%
knowledge infrastructure is highly
 

00:01:17.560 --> 00:01:20.109 align:start position:0%
knowledge infrastructure is highly
complex<00:01:18.159><c> and</c><00:01:18.360><c> highly</c><00:01:18.640><c> critical</c><00:01:19.600><c> for</c><00:01:19.799><c> instance</c>

00:01:20.109 --> 00:01:20.119 align:start position:0%
complex and highly critical for instance
 

00:01:20.119 --> 00:01:23.630 align:start position:0%
complex and highly critical for instance
it's<00:01:20.280><c> used</c><00:01:20.600><c> in</c><00:01:21.040><c> several</c><00:01:21.439><c> L2</c><00:01:22.040><c> chains</c><00:01:22.759><c> so</c><00:01:23.479><c> kind</c>

00:01:23.630 --> 00:01:23.640 align:start position:0%
it's used in several L2 chains so kind
 

00:01:23.640 --> 00:01:26.630 align:start position:0%
it's used in several L2 chains so kind
of<00:01:23.799><c> bugs</c><00:01:24.280><c> there</c><00:01:25.119><c> uh</c><00:01:25.280><c> could</c><00:01:25.520><c> have</c><00:01:26.400><c> uh</c>

00:01:26.630 --> 00:01:26.640 align:start position:0%
of bugs there uh could have uh
 

00:01:26.640 --> 00:01:29.749 align:start position:0%
of bugs there uh could have uh
catastrophic<00:01:27.600><c> financial</c><00:01:28.119><c> and</c><00:01:28.759><c> reputational</c>

00:01:29.749 --> 00:01:29.759 align:start position:0%
catastrophic financial and reputational
 

00:01:29.759 --> 00:01:33.149 align:start position:0%
catastrophic financial and reputational
uh<00:01:30.159><c> impact</c><00:01:31.159><c> and</c><00:01:31.759><c> we</c><00:01:31.880><c> should</c><00:01:32.159><c> really</c><00:01:32.600><c> make</c><00:01:32.799><c> sure</c>

00:01:33.149 --> 00:01:33.159 align:start position:0%
uh impact and we should really make sure
 

00:01:33.159 --> 00:01:35.630 align:start position:0%
uh impact and we should really make sure
these<00:01:33.600><c> components</c><00:01:34.119><c> are</c><00:01:34.479><c> as</c><00:01:34.759><c> bulletproof</c><00:01:35.479><c> as</c>

00:01:35.630 --> 00:01:35.640 align:start position:0%
these components are as bulletproof as
 

00:01:35.640 --> 00:01:37.270 align:start position:0%
these components are as bulletproof as
they<00:01:35.759><c> can</c>

00:01:37.270 --> 00:01:37.280 align:start position:0%
they can
 

00:01:37.280 --> 00:01:41.069 align:start position:0%
they can
get<00:01:38.280><c> um</c><00:01:38.759><c> while</c><00:01:38.920><c> we</c><00:01:39.040><c> haven't</c><00:01:39.320><c> seen</c><00:01:40.320><c> a</c><00:01:40.680><c> really</c>

00:01:41.069 --> 00:01:41.079 align:start position:0%
get um while we haven't seen a really
 

00:01:41.079 --> 00:01:43.950 align:start position:0%
get um while we haven't seen a really
catastrophic<00:01:41.640><c> incident</c><00:01:42.520><c> uh</c><00:01:42.640><c> in</c><00:01:42.799><c> this</c><00:01:42.960><c> field</c>

00:01:43.950 --> 00:01:43.960 align:start position:0%
catastrophic incident uh in this field
 

00:01:43.960 --> 00:01:46.550 align:start position:0%
catastrophic incident uh in this field
may<00:01:44.240><c> maybe</c><00:01:44.680><c> perhaps</c><00:01:45.680><c> uh</c><00:01:45.880><c> comparable</c><00:01:46.280><c> to</c><00:01:46.399><c> the</c>

00:01:46.550 --> 00:01:46.560 align:start position:0%
may maybe perhaps uh comparable to the
 

00:01:46.560 --> 00:01:48.510 align:start position:0%
may maybe perhaps uh comparable to the
Dow<00:01:46.880><c> hack</c><00:01:47.439><c> in</c>

00:01:48.510 --> 00:01:48.520 align:start position:0%
Dow hack in
 

00:01:48.520 --> 00:01:52.709 align:start position:0%
Dow hack in
2016<00:01:49.520><c> uh</c><00:01:49.640><c> it's</c><00:01:49.799><c> really</c><00:01:50.040><c> important</c><00:01:51.040><c> that</c><00:01:51.600><c> um</c><00:01:51.840><c> we</c>

00:01:52.709 --> 00:01:52.719 align:start position:0%
2016 uh it's really important that um we
 

00:01:52.719 --> 00:01:55.029 align:start position:0%
2016 uh it's really important that um we
have<00:01:53.399><c> uh</c><00:01:53.560><c> rigorous</c><00:01:54.040><c> testing</c><00:01:54.520><c> for</c><00:01:54.759><c> these</c>

00:01:55.029 --> 00:01:55.039 align:start position:0%
have uh rigorous testing for these
 

00:01:55.039 --> 00:01:59.230 align:start position:0%
have uh rigorous testing for these
components<00:01:56.039><c> and</c><00:01:56.360><c> we</c><00:01:56.840><c> use</c><00:01:57.799><c> um</c><00:01:58.399><c> you</c><00:01:58.560><c> know</c><00:01:59.039><c> the</c>

00:01:59.230 --> 00:01:59.240 align:start position:0%
components and we use um you know the
 

00:01:59.240 --> 00:02:04.350 align:start position:0%
components and we use um you know the
best<00:02:00.079><c> ering</c><00:02:00.560><c> uh</c><00:02:00.719><c> discipline</c><00:02:01.680><c> that</c><00:02:01.960><c> we</c><00:02:02.640><c> can</c><00:02:03.520><c> um</c>

00:02:04.350 --> 00:02:04.360 align:start position:0%
best ering uh discipline that we can um
 

00:02:04.360 --> 00:02:06.870 align:start position:0%
best ering uh discipline that we can um
have<00:02:04.880><c> right</c><00:02:05.880><c> uh</c><00:02:06.000><c> because</c><00:02:06.240><c> these</c><00:02:06.399><c> components</c>

00:02:06.870 --> 00:02:06.880 align:start position:0%
have right uh because these components
 

00:02:06.880 --> 00:02:09.270 align:start position:0%
have right uh because these components
are<00:02:07.560><c> really</c><00:02:07.960><c> complex</c><00:02:08.560><c> and</c><00:02:08.800><c> getting</c><00:02:09.039><c> them</c>

00:02:09.270 --> 00:02:09.280 align:start position:0%
are really complex and getting them
 

00:02:09.280 --> 00:02:11.790 align:start position:0%
are really complex and getting them
right<00:02:09.599><c> is</c><00:02:09.879><c> is</c><00:02:10.000><c> not</c>

00:02:11.790 --> 00:02:11.800 align:start position:0%
right is is not
 

00:02:11.800 --> 00:02:14.670 align:start position:0%
right is is not
easy<00:02:12.800><c> so</c><00:02:13.000><c> what</c><00:02:13.120><c> is</c><00:02:13.239><c> fuzzing</c><00:02:13.959><c> I</c><00:02:14.160><c> don't</c><00:02:14.360><c> think</c><00:02:14.519><c> I</c>

00:02:14.670 --> 00:02:14.680 align:start position:0%
easy so what is fuzzing I don't think I
 

00:02:14.680 --> 00:02:17.830 align:start position:0%
easy so what is fuzzing I don't think I
have<00:02:14.800><c> to</c><00:02:15.120><c> like</c><00:02:15.519><c> explain</c><00:02:16.040><c> this</c><00:02:16.440><c> after</c><00:02:16.800><c> the</c><00:02:17.239><c> last</c>

00:02:17.830 --> 00:02:17.840 align:start position:0%
have to like explain this after the last
 

00:02:17.840 --> 00:02:20.750 align:start position:0%
have to like explain this after the last
uh<00:02:18.000><c> talk</c><00:02:18.480><c> but</c><00:02:19.120><c> fuzzing</c><00:02:19.599><c> is</c><00:02:20.040><c> widely</c><00:02:20.360><c> used</c><00:02:20.599><c> in</c>

00:02:20.750 --> 00:02:20.760 align:start position:0%
uh talk but fuzzing is widely used in
 

00:02:20.760 --> 00:02:23.430 align:start position:0%
uh talk but fuzzing is widely used in
industry<00:02:21.680><c> um</c><00:02:21.959><c> for</c><00:02:22.120><c> instance</c><00:02:22.360><c> at</c><00:02:22.560><c> Microsoft</c>

00:02:23.430 --> 00:02:23.440 align:start position:0%
industry um for instance at Microsoft
 

00:02:23.440 --> 00:02:25.670 align:start position:0%
industry um for instance at Microsoft
Google<00:02:23.879><c> meta</c><00:02:24.720><c> uh</c><00:02:24.840><c> they're</c><00:02:24.959><c> fuzzing</c><00:02:25.360><c> a</c><00:02:25.440><c> lot</c><00:02:25.560><c> of</c>

00:02:25.670 --> 00:02:25.680 align:start position:0%
Google meta uh they're fuzzing a lot of
 

00:02:25.680 --> 00:02:27.869 align:start position:0%
Google meta uh they're fuzzing a lot of
their<00:02:25.879><c> infrastructure</c><00:02:26.879><c> uh</c><00:02:26.959><c> to</c><00:02:27.160><c> catch</c><00:02:27.440><c> Buck</c>

00:02:27.869 --> 00:02:27.879 align:start position:0%
their infrastructure uh to catch Buck
 

00:02:27.879 --> 00:02:30.030 align:start position:0%
their infrastructure uh to catch Buck
before<00:02:28.599><c> um</c><00:02:28.760><c> hackers</c><00:02:29.080><c> can</c><00:02:29.239><c> actually</c><00:02:29.480><c> exploit</c>

00:02:30.030 --> 00:02:30.040 align:start position:0%
before um hackers can actually exploit
 

00:02:30.040 --> 00:02:32.030 align:start position:0%
before um hackers can actually exploit
them<00:02:30.360><c> in</c>

00:02:32.030 --> 00:02:32.040 align:start position:0%
them in
 

00:02:32.040 --> 00:02:34.670 align:start position:0%
them in
practice<00:02:33.040><c> so</c><00:02:33.480><c> in</c><00:02:33.599><c> this</c><00:02:33.800><c> talk</c><00:02:34.080><c> I'll</c><00:02:34.440><c> give</c><00:02:34.560><c> you</c>

00:02:34.670 --> 00:02:34.680 align:start position:0%
practice so in this talk I'll give you
 

00:02:34.680 --> 00:02:38.869 align:start position:0%
practice so in this talk I'll give you
an<00:02:34.840><c> overview</c><00:02:35.519><c> of</c><00:02:35.879><c> our</c><00:02:36.200><c> fuzzer</c><00:02:37.200><c> for</c><00:02:38.200><c> um</c><00:02:38.480><c> finding</c>

00:02:38.869 --> 00:02:38.879 align:start position:0%
an overview of our fuzzer for um finding
 

00:02:38.879 --> 00:02:41.229 align:start position:0%
an overview of our fuzzer for um finding
critical<00:02:39.319><c> bugs</c><00:02:39.800><c> in</c><00:02:40.319><c> processing</c><00:02:40.800><c> pipelines</c>

00:02:41.229 --> 00:02:41.239 align:start position:0%
critical bugs in processing pipelines
 

00:02:41.239 --> 00:02:44.149 align:start position:0%
critical bugs in processing pipelines
for<00:02:41.400><c> zero</c><00:02:41.720><c> knowledge</c><00:02:42.280><c> circuits</c><00:02:43.280><c> um</c><00:02:44.040><c> the</c>

00:02:44.149 --> 00:02:44.159 align:start position:0%
for zero knowledge circuits um the
 

00:02:44.159 --> 00:02:47.589 align:start position:0%
for zero knowledge circuits um the
fuzzer<00:02:44.480><c> is</c><00:02:44.599><c> called</c><00:02:44.800><c> Circus</c><00:02:45.640><c> and</c><00:02:46.400><c> it</c><00:02:47.319><c> already</c>

00:02:47.589 --> 00:02:47.599 align:start position:0%
fuzzer is called Circus and it already
 

00:02:47.599 --> 00:02:51.550 align:start position:0%
fuzzer is called Circus and it already
supports<00:02:48.159><c> four</c><00:02:48.519><c> of</c><00:02:48.840><c> these</c><00:02:49.800><c> pipelines</c><00:02:50.800><c> namely</c>

00:02:51.550 --> 00:02:51.560 align:start position:0%
supports four of these pipelines namely
 

00:02:51.560 --> 00:02:56.190 align:start position:0%
supports four of these pipelines namely
uh<00:02:51.680><c> circum</c><00:02:52.640><c> cor</c><00:02:53.640><c> uh</c><00:02:53.879><c> gar</c><00:02:54.280><c> and</c><00:02:54.920><c> Noir</c><00:02:55.920><c> and</c>

00:02:56.190 --> 00:02:56.200 align:start position:0%
uh circum cor uh gar and Noir and
 

00:02:56.200 --> 00:02:59.430 align:start position:0%
uh circum cor uh gar and Noir and
there's<00:02:56.720><c> you</c><00:02:56.840><c> know</c><00:02:57.120><c> like</c><00:02:57.440><c> a</c><00:02:58.440><c> a</c><00:02:58.800><c> gazillion</c><00:02:59.280><c> of</c>

00:02:59.430 --> 00:02:59.440 align:start position:0%
there's you know like a a gazillion of
 

00:02:59.440 --> 00:03:00.430 align:start position:0%
there's you know like a a gazillion of
different

00:03:00.430 --> 00:03:00.440 align:start position:0%
different
 

00:03:00.440 --> 00:03:03.309 align:start position:0%
different
dsls<00:03:01.239><c> popping</c><00:03:01.560><c> up</c><00:03:01.879><c> it</c><00:03:02.000><c> seems</c><00:03:02.519><c> like</c><00:03:02.760><c> you</c><00:03:03.040><c> walk</c>

00:03:03.309 --> 00:03:03.319 align:start position:0%
dsls popping up it seems like you walk
 

00:03:03.319 --> 00:03:05.750 align:start position:0%
dsls popping up it seems like you walk
around<00:03:03.680><c> here</c><00:03:03.959><c> and</c><00:03:04.159><c> you</c><00:03:04.680><c> see</c><00:03:04.959><c> another</c><00:03:05.239><c> one</c><00:03:05.640><c> in</c>

00:03:05.750 --> 00:03:05.760 align:start position:0%
around here and you see another one in
 

00:03:05.760 --> 00:03:10.190 align:start position:0%
around here and you see another one in
the<00:03:06.280><c> corner</c><00:03:07.440><c> um</c><00:03:08.440><c> and</c><00:03:08.879><c> we've</c><00:03:09.120><c> already</c><00:03:09.360><c> found</c><00:03:10.080><c> uh</c>

00:03:10.190 --> 00:03:10.200 align:start position:0%
the corner um and we've already found uh
 

00:03:10.200 --> 00:03:12.509 align:start position:0%
the corner um and we've already found uh
16<00:03:10.599><c> bugs</c><00:03:10.879><c> in</c><00:03:11.000><c> total</c><00:03:11.440><c> for</c><00:03:11.720><c> the</c><00:03:11.840><c> four</c><00:03:12.400><c> uh</c>

00:03:12.509 --> 00:03:12.519 align:start position:0%
16 bugs in total for the four uh
 

00:03:12.519 --> 00:03:15.470 align:start position:0%
16 bugs in total for the four uh
pipelines<00:03:12.959><c> we</c><00:03:13.120><c> looked</c><00:03:13.480><c> at</c><00:03:14.480><c> um</c><00:03:14.959><c> 15</c><00:03:15.360><c> have</c>

00:03:15.470 --> 00:03:15.480 align:start position:0%
pipelines we looked at um 15 have
 

00:03:15.480 --> 00:03:17.270 align:start position:0%
pipelines we looked at um 15 have
already<00:03:15.680><c> been</c><00:03:15.879><c> fixed</c><00:03:16.319><c> so</c><00:03:16.519><c> that</c><00:03:16.760><c> kind</c><00:03:16.879><c> of</c><00:03:17.000><c> shows</c>

00:03:17.270 --> 00:03:17.280 align:start position:0%
already been fixed so that kind of shows
 

00:03:17.280 --> 00:03:19.509 align:start position:0%
already been fixed so that kind of shows
that<00:03:17.480><c> these</c><00:03:17.640><c> bugs</c><00:03:17.959><c> are</c><00:03:18.200><c> really</c><00:03:18.920><c> uh</c><00:03:19.080><c> taken</c>

00:03:19.509 --> 00:03:19.519 align:start position:0%
that these bugs are really uh taken
 

00:03:19.519 --> 00:03:22.750 align:start position:0%
that these bugs are really uh taken
seriously<00:03:20.519><c> and</c><00:03:21.120><c> um</c><00:03:21.519><c> developers</c><00:03:22.519><c> sometimes</c>

00:03:22.750 --> 00:03:22.760 align:start position:0%
seriously and um developers sometimes
 

00:03:22.760 --> 00:03:24.670 align:start position:0%
seriously and um developers sometimes
respond<00:03:23.120><c> within</c><00:03:23.400><c> hours</c><00:03:24.000><c> to</c><00:03:24.239><c> actually</c><00:03:24.519><c> get</c>

00:03:24.670 --> 00:03:24.680 align:start position:0%
respond within hours to actually get
 

00:03:24.680 --> 00:03:25.750 align:start position:0%
respond within hours to actually get
them

00:03:25.750 --> 00:03:25.760 align:start position:0%
them
 

00:03:25.760 --> 00:03:28.630 align:start position:0%
them
fixed<00:03:26.760><c> um</c><00:03:26.959><c> you</c><00:03:27.080><c> can</c><00:03:27.200><c> also</c><00:03:27.360><c> see</c><00:03:27.560><c> a</c><00:03:27.720><c> kind</c><00:03:27.840><c> of</c><00:03:28.480><c> uh</c>

00:03:28.630 --> 00:03:28.640 align:start position:0%
fixed um you can also see a kind of uh
 

00:03:28.640 --> 00:03:30.309 align:start position:0%
fixed um you can also see a kind of uh
breakdown<00:03:29.159><c> of</c><00:03:29.319><c> the</c><00:03:29.400><c> different</c>

00:03:30.309 --> 00:03:30.319 align:start position:0%
breakdown of the different
 

00:03:30.319 --> 00:03:32.550 align:start position:0%
breakdown of the different
bugs<00:03:30.680><c> and</c><00:03:30.840><c> where</c><00:03:31.000><c> we</c><00:03:31.159><c> found</c><00:03:31.439><c> them</c><00:03:32.239><c> and</c><00:03:32.400><c> as</c><00:03:32.480><c> you</c>

00:03:32.550 --> 00:03:32.560 align:start position:0%
bugs and where we found them and as you
 

00:03:32.560 --> 00:03:34.229 align:start position:0%
bugs and where we found them and as you
can<00:03:32.720><c> see</c><00:03:32.959><c> they're</c><00:03:33.200><c> kind</c><00:03:33.319><c> of</c><00:03:33.680><c> very</c><00:03:33.879><c> evenly</c>

00:03:34.229 --> 00:03:34.239 align:start position:0%
can see they're kind of very evenly
 

00:03:34.239 --> 00:03:36.830 align:start position:0%
can see they're kind of very evenly
spread<00:03:34.560><c> across</c><00:03:34.799><c> the</c><00:03:35.000><c> different</c><00:03:35.680><c> uh</c><00:03:35.840><c> pipelines</c>

00:03:36.830 --> 00:03:36.840 align:start position:0%
spread across the different uh pipelines
 

00:03:36.840 --> 00:03:39.710 align:start position:0%
spread across the different uh pipelines
so<00:03:37.080><c> it's</c><00:03:37.239><c> not</c><00:03:37.480><c> like</c><00:03:38.000><c> there's</c><00:03:38.720><c> one</c><00:03:39.280><c> pipeline</c>

00:03:39.710 --> 00:03:39.720 align:start position:0%
so it's not like there's one pipeline
 

00:03:39.720 --> 00:03:41.670 align:start position:0%
so it's not like there's one pipeline
that's<00:03:40.040><c> you</c><00:03:40.159><c> know</c><00:03:40.720><c> responsible</c><00:03:41.200><c> for</c><00:03:41.400><c> all</c><00:03:41.560><c> the</c>

00:03:41.670 --> 00:03:41.680 align:start position:0%
that's you know responsible for all the
 

00:03:41.680 --> 00:03:44.589 align:start position:0%
that's you know responsible for all the
bugs<00:03:42.599><c> uh</c><00:03:42.680><c> that</c><00:03:42.799><c> we</c>

00:03:44.589 --> 00:03:44.599 align:start position:0%
bugs uh that we
 

00:03:44.599 --> 00:03:48.350 align:start position:0%
bugs uh that we
found<00:03:45.599><c> um</c><00:03:46.159><c> now</c><00:03:46.879><c> kind</c><00:03:47.000><c> of</c><00:03:47.239><c> to</c><00:03:47.400><c> make</c><00:03:47.560><c> sure</c><00:03:47.920><c> that</c>

00:03:48.350 --> 00:03:48.360 align:start position:0%
found um now kind of to make sure that
 

00:03:48.360 --> 00:03:51.390 align:start position:0%
found um now kind of to make sure that
everybody<00:03:49.040><c> understands</c><00:03:49.640><c> I</c><00:03:49.720><c> mean</c><00:03:50.560><c> like</c><00:03:50.879><c> I</c><00:03:51.280><c> yeah</c>

00:03:51.390 --> 00:03:51.400 align:start position:0%
everybody understands I mean like I yeah
 

00:03:51.400 --> 00:03:54.030 align:start position:0%
everybody understands I mean like I yeah
I<00:03:51.560><c> assume</c><00:03:52.000><c> not</c><00:03:52.560><c> all</c><00:03:52.840><c> people</c><00:03:53.120><c> are</c><00:03:53.319><c> aware</c><00:03:53.560><c> of</c>

00:03:54.030 --> 00:03:54.040 align:start position:0%
I assume not all people are aware of
 

00:03:54.040 --> 00:03:56.190 align:start position:0%
I assume not all people are aware of
what<00:03:54.280><c> these</c><00:03:54.920><c> uh</c><00:03:55.040><c> processing</c><00:03:55.480><c> pipelines</c><00:03:55.920><c> look</c>

00:03:56.190 --> 00:03:56.200 align:start position:0%
what these uh processing pipelines look
 

00:03:56.200 --> 00:04:00.309 align:start position:0%
what these uh processing pipelines look
like<00:03:56.439><c> look</c><00:03:56.640><c> like</c><00:03:57.519><c> uh</c><00:03:57.640><c> here's</c><00:03:57.840><c> a</c><00:03:58.360><c> short</c><00:03:59.159><c> kind</c><00:03:59.319><c> of</c>

00:04:00.309 --> 00:04:00.319 align:start position:0%
like look like uh here's a short kind of
 

00:04:00.319 --> 00:04:03.390 align:start position:0%
like look like uh here's a short kind of
summary<00:04:01.319><c> um</c><00:04:01.799><c> you</c><00:04:01.920><c> can</c><00:04:02.040><c> see</c><00:04:02.439><c> in</c><00:04:02.640><c> the</c><00:04:03.079><c> sort</c><00:04:03.239><c> of</c>

00:04:03.390 --> 00:04:03.400 align:start position:0%
summary um you can see in the sort of
 

00:04:03.400 --> 00:04:06.910 align:start position:0%
summary um you can see in the sort of
yellow<00:04:03.720><c> box</c><00:04:04.480><c> um</c><00:04:04.879><c> there</c><00:04:05.000><c> is</c><00:04:06.000><c> a</c><00:04:06.120><c> circuit</c><00:04:06.799><c> that</c>

00:04:06.910 --> 00:04:06.920 align:start position:0%
yellow box um there is a circuit that
 

00:04:06.920 --> 00:04:09.589 align:start position:0%
yellow box um there is a circuit that
the<00:04:07.040><c> user</c><00:04:07.319><c> writes</c><00:04:08.159><c> um</c><00:04:08.720><c> that</c><00:04:08.840><c> goes</c><00:04:09.040><c> into</c><00:04:09.280><c> the</c>

00:04:09.589 --> 00:04:09.599 align:start position:0%
the user writes um that goes into the
 

00:04:09.599 --> 00:04:13.270 align:start position:0%
the user writes um that goes into the
compiler<00:04:10.599><c> and</c><00:04:10.760><c> then</c><00:04:10.959><c> the</c><00:04:11.280><c> compiler</c><00:04:12.280><c> um</c><00:04:12.599><c> hands</c>

00:04:13.270 --> 00:04:13.280 align:start position:0%
compiler and then the compiler um hands
 

00:04:13.280 --> 00:04:16.110 align:start position:0%
compiler and then the compiler um hands
some<00:04:13.519><c> output</c><00:04:13.840><c> to</c><00:04:13.959><c> the</c><00:04:14.079><c> witness</c><00:04:14.680><c> generator</c><00:04:15.680><c> and</c>

00:04:16.110 --> 00:04:16.120 align:start position:0%
some output to the witness generator and
 

00:04:16.120 --> 00:04:18.349 align:start position:0%
some output to the witness generator and
the<00:04:16.239><c> witness</c><00:04:16.600><c> generator</c><00:04:17.160><c> can</c><00:04:17.359><c> then</c><00:04:17.720><c> take</c><00:04:18.079><c> the</c>

00:04:18.349 --> 00:04:18.359 align:start position:0%
the witness generator can then take the
 

00:04:18.359 --> 00:04:21.590 align:start position:0%
the witness generator can then take the
input<00:04:19.000><c> so</c><00:04:19.199><c> the</c><00:04:19.400><c> you</c><00:04:19.880><c> the</c><00:04:20.079><c> user</c><00:04:20.440><c> input</c><00:04:21.320><c> uh</c><00:04:21.440><c> to</c>

00:04:21.590 --> 00:04:21.600 align:start position:0%
input so the you the user input uh to
 

00:04:21.600 --> 00:04:25.270 align:start position:0%
input so the you the user input uh to
the<00:04:21.960><c> circuit</c><00:04:22.960><c> and</c><00:04:23.320><c> generate</c><00:04:23.759><c> a</c><00:04:24.120><c> witness</c><00:04:25.120><c> uh</c>

00:04:25.270 --> 00:04:25.280 align:start position:0%
the circuit and generate a witness uh
 

00:04:25.280 --> 00:04:27.590 align:start position:0%
the circuit and generate a witness uh
that<00:04:25.400><c> can</c><00:04:25.520><c> be</c><00:04:25.720><c> then</c><00:04:25.960><c> used</c><00:04:26.320><c> by</c><00:04:26.440><c> the</c><00:04:26.600><c> prover</c><00:04:27.479><c> and</c>

00:04:27.590 --> 00:04:27.600 align:start position:0%
that can be then used by the prover and
 

00:04:27.600 --> 00:04:29.230 align:start position:0%
that can be then used by the prover and
then<00:04:27.720><c> theover</c><00:04:28.120><c> generates</c><00:04:28.479><c> a</c><00:04:28.600><c> proof</c><00:04:28.919><c> that</c><00:04:29.039><c> can</c>

00:04:29.230 --> 00:04:29.240 align:start position:0%
then theover generates a proof that can
 

00:04:29.240 --> 00:04:31.310 align:start position:0%
then theover generates a proof that can
then<00:04:29.360><c> be</c><00:04:29.479><c> very</c><00:04:29.720><c> verified</c><00:04:30.639><c> to</c><00:04:30.919><c> essentially</c>

00:04:31.310 --> 00:04:31.320 align:start position:0%
then be very verified to essentially
 

00:04:31.320 --> 00:04:35.870 align:start position:0%
then be very verified to essentially
check<00:04:31.759><c> that</c><00:04:32.280><c> the</c><00:04:32.440><c> circuit</c><00:04:32.919><c> was</c><00:04:33.400><c> actually</c>

00:04:35.870 --> 00:04:35.880 align:start position:0%
 
 

00:04:35.880 --> 00:04:40.189 align:start position:0%
 
executed<00:04:37.160><c> so</c><00:04:38.160><c> um</c><00:04:38.360><c> now</c><00:04:38.560><c> that</c><00:04:38.759><c> we</c><00:04:39.280><c> have</c><00:04:39.440><c> a</c><00:04:39.919><c> bit</c><00:04:40.080><c> of</c>

00:04:40.189 --> 00:04:40.199 align:start position:0%
executed so um now that we have a bit of
 

00:04:40.199 --> 00:04:41.870 align:start position:0%
executed so um now that we have a bit of
an<00:04:40.560><c> understanding</c><00:04:40.840><c> of</c><00:04:41.039><c> how</c><00:04:41.240><c> these</c><00:04:41.440><c> pipelines</c>

00:04:41.870 --> 00:04:41.880 align:start position:0%
an understanding of how these pipelines
 

00:04:41.880 --> 00:04:46.029 align:start position:0%
an understanding of how these pipelines
look<00:04:42.120><c> like</c><00:04:42.919><c> let's</c><00:04:43.800><c> uh</c><00:04:44.080><c> dive</c><00:04:44.320><c> a</c><00:04:44.479><c> bit</c><00:04:45.199><c> uh</c><00:04:45.320><c> deeper</c>

00:04:46.029 --> 00:04:46.039 align:start position:0%
look like let's uh dive a bit uh deeper
 

00:04:46.039 --> 00:04:49.270 align:start position:0%
look like let's uh dive a bit uh deeper
to<00:04:46.639><c> understand</c><00:04:47.120><c> how</c><00:04:47.400><c> we</c><00:04:47.639><c> find</c><00:04:47.960><c> these</c>

00:04:49.270 --> 00:04:49.280 align:start position:0%
to understand how we find these
 

00:04:49.280 --> 00:04:53.230 align:start position:0%
to understand how we find these
bugs<00:04:50.280><c> so</c><00:04:50.759><c> first</c><00:04:51.199><c> I</c><00:04:51.280><c> want</c><00:04:51.400><c> to</c><00:04:51.479><c> be</c><00:04:51.639><c> very</c><00:04:51.800><c> clear</c><00:04:52.440><c> um</c>

00:04:53.230 --> 00:04:53.240 align:start position:0%
bugs so first I want to be very clear um
 

00:04:53.240 --> 00:04:55.270 align:start position:0%
bugs so first I want to be very clear um
we<00:04:53.400><c> are</c><00:04:53.520><c> not</c><00:04:53.840><c> cryptographers</c><00:04:54.840><c> this</c><00:04:54.960><c> is</c><00:04:55.080><c> not</c>

00:04:55.270 --> 00:04:55.280 align:start position:0%
we are not cryptographers this is not
 

00:04:55.280 --> 00:04:56.749 align:start position:0%
we are not cryptographers this is not
our<00:04:55.680><c> uh</c><00:04:55.800><c> this</c><00:04:55.880><c> is</c><00:04:56.000><c> not</c><00:04:56.120><c> my</c><00:04:56.240><c> background</c><00:04:56.639><c> my</c>

00:04:56.749 --> 00:04:56.759 align:start position:0%
our uh this is not my background my
 

00:04:56.759 --> 00:04:58.909 align:start position:0%
our uh this is not my background my
background<00:04:57.080><c> is</c><00:04:57.199><c> in</c><00:04:57.800><c> you</c><00:04:57.919><c> know</c><00:04:58.360><c> uh</c><00:04:58.479><c> software</c>

00:04:58.909 --> 00:04:58.919 align:start position:0%
background is in you know uh software
 

00:04:58.919 --> 00:05:00.749 align:start position:0%
background is in you know uh software
security<00:04:59.759><c> uh</c><00:04:59.880><c> program</c>

00:05:00.749 --> 00:05:00.759 align:start position:0%
security uh program
 

00:05:00.759 --> 00:05:04.510 align:start position:0%
security uh program
analysis<00:05:01.759><c> um</c><00:05:02.360><c> and</c><00:05:02.800><c> for</c><00:05:03.000><c> this</c><00:05:03.199><c> reason</c><00:05:03.880><c> I</c><00:05:04.240><c> can't</c>

00:05:04.510 --> 00:05:04.520 align:start position:0%
analysis um and for this reason I can't
 

00:05:04.520 --> 00:05:06.870 align:start position:0%
analysis um and for this reason I can't
really<00:05:04.960><c> you</c><00:05:05.080><c> know</c><00:05:05.320><c> try</c><00:05:05.560><c> to</c><00:05:06.000><c> understand</c><00:05:06.600><c> the</c>

00:05:06.870 --> 00:05:06.880 align:start position:0%
really you know try to understand the
 

00:05:06.880 --> 00:05:10.270 align:start position:0%
really you know try to understand the
the<00:05:07.000><c> logic</c><00:05:07.720><c> that's</c><00:05:08.280><c> in</c><00:05:09.280><c> the</c><00:05:09.400><c> integrate</c><00:05:09.880><c> log</c>

00:05:10.270 --> 00:05:10.280 align:start position:0%
the logic that's in the integrate log
 

00:05:10.280 --> 00:05:11.870 align:start position:0%
the logic that's in the integrate log
logic<00:05:10.639><c> in</c><00:05:10.800><c> many</c><00:05:11.000><c> of</c><00:05:11.160><c> these</c>

00:05:11.870 --> 00:05:11.880 align:start position:0%
logic in many of these
 

00:05:11.880 --> 00:05:15.990 align:start position:0%
logic in many of these
components<00:05:12.880><c> um</c><00:05:13.080><c> which</c><00:05:13.240><c> is</c><00:05:13.919><c> uh</c><00:05:14.199><c> why</c><00:05:14.680><c> we</c><00:05:15.000><c> treat</c>

00:05:15.990 --> 00:05:16.000 align:start position:0%
components um which is uh why we treat
 

00:05:16.000 --> 00:05:18.029 align:start position:0%
components um which is uh why we treat
these<00:05:16.240><c> essentially</c><00:05:16.600><c> as</c><00:05:16.720><c> a</c><00:05:16.840><c> blackbox</c><00:05:17.440><c> so</c><00:05:17.800><c> much</c>

00:05:18.029 --> 00:05:18.039 align:start position:0%
these essentially as a blackbox so much
 

00:05:18.039 --> 00:05:20.830 align:start position:0%
these essentially as a blackbox so much
like<00:05:18.440><c> what</c><00:05:18.759><c> a</c><00:05:19.080><c> typical</c><00:05:19.400><c> user</c><00:05:19.680><c> would</c><00:05:19.880><c> do</c><00:05:20.600><c> uh</c><00:05:20.680><c> we</c>

00:05:20.830 --> 00:05:20.840 align:start position:0%
like what a typical user would do uh we
 

00:05:20.840 --> 00:05:22.990 align:start position:0%
like what a typical user would do uh we
just<00:05:20.960><c> view</c><00:05:21.280><c> them</c><00:05:21.560><c> as</c><00:05:21.639><c> a</c>

00:05:22.990 --> 00:05:23.000 align:start position:0%
just view them as a
 

00:05:23.000 --> 00:05:25.189 align:start position:0%
just view them as a
blackbox<00:05:24.000><c> so</c><00:05:24.240><c> how</c><00:05:24.360><c> can</c><00:05:24.520><c> we</c><00:05:24.639><c> still</c><00:05:24.840><c> find</c><00:05:25.039><c> all</c>

00:05:25.189 --> 00:05:25.199 align:start position:0%
blackbox so how can we still find all
 

00:05:25.199 --> 00:05:28.790 align:start position:0%
blackbox so how can we still find all
these<00:05:25.360><c> bugs</c><00:05:26.080><c> right</c><00:05:26.880><c> well</c><00:05:27.440><c> first</c><00:05:28.160><c> we</c><00:05:28.560><c> have</c><00:05:28.720><c> a</c>

00:05:28.790 --> 00:05:28.800 align:start position:0%
these bugs right well first we have a
 

00:05:28.800 --> 00:05:30.150 align:start position:0%
these bugs right well first we have a
lot<00:05:28.960><c> of</c><00:05:29.120><c> experience</c>

00:05:30.150 --> 00:05:30.160 align:start position:0%
lot of experience
 

00:05:30.160 --> 00:05:33.950 align:start position:0%
lot of experience
uh<00:05:30.319><c> in</c><00:05:30.880><c> testing</c><00:05:31.880><c> uh</c><00:05:32.199><c> complex</c><00:05:33.199><c> or</c><00:05:33.440><c> software</c><00:05:33.759><c> for</c>

00:05:33.950 --> 00:05:33.960 align:start position:0%
uh in testing uh complex or software for
 

00:05:33.960 --> 00:05:36.270 align:start position:0%
uh in testing uh complex or software for
complex<00:05:34.319><c> domains</c><00:05:35.280><c> and</c><00:05:35.440><c> building</c><00:05:35.680><c> fuzzers</c><00:05:36.080><c> for</c>

00:05:36.270 --> 00:05:36.280 align:start position:0%
complex domains and building fuzzers for
 

00:05:36.280 --> 00:05:39.150 align:start position:0%
complex domains and building fuzzers for
them<00:05:37.039><c> so</c><00:05:37.440><c> we've</c><00:05:37.720><c> done</c><00:05:38.280><c> quite</c><00:05:38.440><c> a</c><00:05:38.560><c> bit</c><00:05:38.680><c> of</c><00:05:38.840><c> work</c>

00:05:39.150 --> 00:05:39.160 align:start position:0%
them so we've done quite a bit of work
 

00:05:39.160 --> 00:05:41.710 align:start position:0%
them so we've done quite a bit of work
on<00:05:39.800><c> uh</c><00:05:39.919><c> fuzzing</c><00:05:40.360><c> for</c><00:05:40.600><c> smart</c><00:05:40.960><c> contracts</c><00:05:41.520><c> it's</c>

00:05:41.710 --> 00:05:41.720 align:start position:0%
on uh fuzzing for smart contracts it's
 

00:05:41.720 --> 00:05:44.590 align:start position:0%
on uh fuzzing for smart contracts it's
probably<00:05:42.039><c> the</c><00:05:42.319><c> work</c><00:05:42.600><c> that's</c><00:05:42.800><c> most</c><00:05:43.360><c> closely</c><00:05:44.360><c> to</c>

00:05:44.590 --> 00:05:44.600 align:start position:0%
probably the work that's most closely to
 

00:05:44.600 --> 00:05:48.189 align:start position:0%
probably the work that's most closely to
the<00:05:44.720><c> audience</c><00:05:45.160><c> that's</c><00:05:45.600><c> here</c><00:05:46.600><c> um</c><00:05:47.560><c> and</c><00:05:48.000><c> for</c>

00:05:48.189 --> 00:05:48.199 align:start position:0%
the audience that's here um and for
 

00:05:48.199 --> 00:05:51.350 align:start position:0%
the audience that's here um and for
instance<00:05:48.479><c> we</c><00:05:48.639><c> created</c><00:05:49.000><c> the</c><00:05:49.199><c> Harvey</c><00:05:49.919><c> fuzzer</c><00:05:50.919><c> um</c>

00:05:51.350 --> 00:05:51.360 align:start position:0%
instance we created the Harvey fuzzer um
 

00:05:51.360 --> 00:05:52.950 align:start position:0%
instance we created the Harvey fuzzer um
many<00:05:51.600><c> years</c><00:05:51.800><c> ago</c><00:05:52.120><c> and</c><00:05:52.240><c> we're</c><00:05:52.440><c> still</c><00:05:52.720><c> kind</c><00:05:52.840><c> of</c>

00:05:52.950 --> 00:05:52.960 align:start position:0%
many years ago and we're still kind of
 

00:05:52.960 --> 00:05:55.830 align:start position:0%
many years ago and we're still kind of
maintaining<00:05:53.600><c> it</c><00:05:54.600><c> um</c><00:05:55.000><c> we</c><00:05:55.120><c> also</c><00:05:55.319><c> did</c><00:05:55.440><c> some</c><00:05:55.600><c> work</c>

00:05:55.830 --> 00:05:55.840 align:start position:0%
maintaining it um we also did some work
 

00:05:55.840 --> 00:05:59.670 align:start position:0%
maintaining it um we also did some work
on<00:05:56.039><c> ML</c><00:05:56.600><c> models</c><00:05:57.600><c> um</c><00:05:57.840><c> and</c><00:05:58.039><c> on</c><00:05:58.600><c> on</c><00:05:58.800><c> testing</c><00:05:59.280><c> ml</c>

00:05:59.670 --> 00:05:59.680 align:start position:0%
on ML models um and on on testing ml
 

00:05:59.680 --> 00:06:02.309 align:start position:0%
on ML models um and on on testing ml
models<00:06:00.039><c> and</c><00:06:00.520><c> testing</c><00:06:01.000><c> program</c><00:06:01.360><c> analysis</c>

00:06:02.309 --> 00:06:02.319 align:start position:0%
models and testing program analysis
 

00:06:02.319 --> 00:06:04.909 align:start position:0%
models and testing program analysis
tools<00:06:03.319><c> um</c><00:06:03.720><c> yeah</c><00:06:03.840><c> if</c><00:06:03.919><c> you</c><00:06:04.039><c> want</c><00:06:04.120><c> to</c><00:06:04.240><c> know</c><00:06:04.440><c> more</c>

00:06:04.909 --> 00:06:04.919 align:start position:0%
tools um yeah if you want to know more
 

00:06:04.919 --> 00:06:09.270 align:start position:0%
tools um yeah if you want to know more
check<00:06:05.120><c> out</c><00:06:05.280><c> the</c><00:06:05.479><c> papers</c><00:06:05.919><c> that</c><00:06:06.280><c> are</c><00:06:07.280><c> um</c><00:06:08.280><c> online</c>

00:06:09.270 --> 00:06:09.280 align:start position:0%
check out the papers that are um online
 

00:06:09.280 --> 00:06:11.990 align:start position:0%
check out the papers that are um online
um<00:06:09.639><c> and</c><00:06:09.919><c> the</c><00:06:10.080><c> second</c><00:06:10.759><c> reason</c><00:06:11.280><c> why</c><00:06:11.599><c> we</c><00:06:11.840><c> were</c>

00:06:11.990 --> 00:06:12.000 align:start position:0%
um and the second reason why we were
 

00:06:12.000 --> 00:06:13.670 align:start position:0%
um and the second reason why we were
able<00:06:12.199><c> to</c><00:06:12.319><c> find</c><00:06:12.560><c> these</c><00:06:12.720><c> bugs</c><00:06:13.199><c> is</c><00:06:13.319><c> that</c><00:06:13.479><c> we</c><00:06:13.560><c> have</c>

00:06:13.670 --> 00:06:13.680 align:start position:0%
able to find these bugs is that we have
 

00:06:13.680 --> 00:06:15.670 align:start position:0%
able to find these bugs is that we have
a<00:06:13.880><c> not</c><00:06:14.160><c> so</c><00:06:14.319><c> secret</c><00:06:14.720><c> weapon</c><00:06:15.240><c> which</c><00:06:15.360><c> is</c><00:06:15.440><c> called</c>

00:06:15.670 --> 00:06:15.680 align:start position:0%
a not so secret weapon which is called
 

00:06:15.680 --> 00:06:17.830 align:start position:0%
a not so secret weapon which is called
metamorphic

00:06:17.830 --> 00:06:17.840 align:start position:0%
metamorphic
 

00:06:17.840 --> 00:06:21.830 align:start position:0%
metamorphic
testing<00:06:18.840><c> so</c><00:06:19.120><c> before</c><00:06:20.039><c> um</c><00:06:20.479><c> explaining</c><00:06:21.479><c> in</c><00:06:21.599><c> a</c><00:06:21.680><c> bit</c>

00:06:21.830 --> 00:06:21.840 align:start position:0%
testing so before um explaining in a bit
 

00:06:21.840 --> 00:06:23.629 align:start position:0%
testing so before um explaining in a bit
more<00:06:22.000><c> detail</c><00:06:22.360><c> what</c><00:06:22.520><c> metamorphic</c><00:06:23.120><c> testing</c><00:06:23.440><c> is</c>

00:06:23.629 --> 00:06:23.639 align:start position:0%
more detail what metamorphic testing is
 

00:06:23.639 --> 00:06:26.110 align:start position:0%
more detail what metamorphic testing is
let<00:06:23.759><c> me</c><00:06:23.919><c> just</c><00:06:24.080><c> give</c><00:06:24.199><c> you</c><00:06:24.400><c> kind</c><00:06:24.520><c> of</c><00:06:24.759><c> a</c><00:06:25.520><c> uh</c><00:06:25.840><c> short</c>

00:06:26.110 --> 00:06:26.120 align:start position:0%
let me just give you kind of a uh short
 

00:06:26.120 --> 00:06:28.070 align:start position:0%
let me just give you kind of a uh short
summary<00:06:26.520><c> of</c><00:06:26.840><c> how</c><00:06:27.000><c> we</c><00:06:27.160><c> got</c><00:06:27.400><c> here</c><00:06:27.639><c> how</c><00:06:27.759><c> we</c><00:06:27.919><c> got</c>

00:06:28.070 --> 00:06:28.080 align:start position:0%
summary of how we got here how we got
 

00:06:28.080 --> 00:06:31.629 align:start position:0%
summary of how we got here how we got
into<00:06:28.360><c> this</c><00:06:28.800><c> uh</c><00:06:28.919><c> interested</c><00:06:29.280><c> in</c><00:06:29.400><c> this</c><00:06:29.919><c> topic</c><00:06:30.919><c> um</c>

00:06:31.629 --> 00:06:31.639 align:start position:0%
into this uh interested in this topic um
 

00:06:31.639 --> 00:06:35.070 align:start position:0%
into this uh interested in this topic um
so<00:06:31.960><c> we</c><00:06:32.599><c> as</c><00:06:32.720><c> I</c><00:06:32.840><c> said</c><00:06:33.400><c> we</c><00:06:33.560><c> were</c><00:06:34.160><c> um</c><00:06:34.280><c> working</c><00:06:34.599><c> on</c>

00:06:35.070 --> 00:06:35.080 align:start position:0%
so we as I said we were um working on
 

00:06:35.080 --> 00:06:37.670 align:start position:0%
so we as I said we were um working on
fuzzing<00:06:35.479><c> for</c><00:06:35.639><c> smart</c><00:06:35.919><c> contracts</c><00:06:36.479><c> mainly</c><00:06:37.479><c> uh</c>

00:06:37.670 --> 00:06:37.680 align:start position:0%
fuzzing for smart contracts mainly uh
 

00:06:37.680 --> 00:06:40.309 align:start position:0%
fuzzing for smart contracts mainly uh
for<00:06:37.880><c> many</c><00:06:38.120><c> years</c><00:06:38.639><c> and</c><00:06:38.840><c> then</c><00:06:39.080><c> at</c><00:06:39.199><c> some</c><00:06:39.400><c> point</c><00:06:40.160><c> um</c>

00:06:40.309 --> 00:06:40.319 align:start position:0%
for many years and then at some point um
 

00:06:40.319 --> 00:06:43.629 align:start position:0%
for many years and then at some point um
I<00:06:40.440><c> guess</c><00:06:40.880><c> maybe</c><00:06:41.199><c> like</c><00:06:41.639><c> a</c><00:06:41.759><c> year</c><00:06:41.960><c> ago</c><00:06:42.440><c> roughly</c><00:06:43.440><c> um</c>

00:06:43.629 --> 00:06:43.639 align:start position:0%
I guess maybe like a year ago roughly um
 

00:06:43.639 --> 00:06:45.469 align:start position:0%
I guess maybe like a year ago roughly um
consensus<00:06:44.160><c> they</c><00:06:44.319><c> released</c><00:06:44.840><c> the</c><00:06:45.039><c> linear</c>

00:06:45.469 --> 00:06:45.479 align:start position:0%
consensus they released the linear
 

00:06:45.479 --> 00:06:48.510 align:start position:0%
consensus they released the linear
blockchain<00:06:46.479><c> um</c><00:06:47.199><c> that</c><00:06:47.440><c> is</c><00:06:47.639><c> one</c><00:06:47.759><c> of</c><00:06:47.880><c> the</c><00:06:48.000><c> first</c>

00:06:48.510 --> 00:06:48.520 align:start position:0%
blockchain um that is one of the first
 

00:06:48.520 --> 00:06:49.749 align:start position:0%
blockchain um that is one of the first
ZK

00:06:49.749 --> 00:06:49.759 align:start position:0%
ZK
 

00:06:49.759 --> 00:06:52.430 align:start position:0%
ZK
EVMS<00:06:50.759><c> and</c><00:06:50.919><c> we</c><00:06:51.080><c> were</c><00:06:51.360><c> like</c><00:06:51.919><c> well</c><00:06:52.160><c> this</c><00:06:52.280><c> is</c>

00:06:52.430 --> 00:06:52.440 align:start position:0%
EVMS and we were like well this is
 

00:06:52.440 --> 00:06:54.270 align:start position:0%
EVMS and we were like well this is
really<00:06:52.720><c> complex</c><00:06:53.360><c> uh</c><00:06:53.560><c> we</c><00:06:53.720><c> started</c><00:06:54.039><c> looking</c>

00:06:54.270 --> 00:06:54.280 align:start position:0%
really complex uh we started looking
 

00:06:54.280 --> 00:06:56.749 align:start position:0%
really complex uh we started looking
into<00:06:54.479><c> it</c><00:06:54.639><c> a</c><00:06:54.759><c> bit</c><00:06:55.400><c> um</c><00:06:56.120><c> and</c><00:06:56.240><c> we</c><00:06:56.360><c> saw</c><00:06:56.560><c> that</c><00:06:56.680><c> there</c>

00:06:56.749 --> 00:06:56.759 align:start position:0%
into it a bit um and we saw that there
 

00:06:56.759 --> 00:06:58.710 align:start position:0%
into it a bit um and we saw that there
are<00:06:56.960><c> these</c><00:06:57.240><c> components</c><00:06:57.840><c> like</c><00:06:58.160><c> the</c><00:06:58.360><c> Gnar</c>

00:06:58.710 --> 00:06:58.720 align:start position:0%
are these components like the Gnar
 

00:06:58.720 --> 00:07:02.110 align:start position:0%
are these components like the Gnar
library<00:06:59.360><c> and</c><00:06:59.599><c> and</c><00:06:59.759><c> the</c><00:07:00.039><c> corset</c><00:07:01.039><c> language</c><00:07:01.440><c> for</c>

00:07:02.110 --> 00:07:02.120 align:start position:0%
library and and the corset language for
 

00:07:02.120 --> 00:07:05.110 align:start position:0%
library and and the corset language for
um<00:07:02.360><c> processing</c><00:07:02.840><c> zero</c><00:07:03.240><c> knowledge</c><00:07:03.879><c> circuits</c><00:07:04.879><c> so</c>

00:07:05.110 --> 00:07:05.120 align:start position:0%
um processing zero knowledge circuits so
 

00:07:05.120 --> 00:07:07.390 align:start position:0%
um processing zero knowledge circuits so
we<00:07:05.240><c> were</c><00:07:05.479><c> like</c><00:07:05.879><c> oh</c><00:07:06.240><c> what</c><00:07:06.360><c> can</c><00:07:06.440><c> we</c><00:07:06.599><c> do</c><00:07:06.759><c> to</c><00:07:07.280><c> you</c>

00:07:07.390 --> 00:07:07.400 align:start position:0%
we were like oh what can we do to you
 

00:07:07.400 --> 00:07:10.469 align:start position:0%
we were like oh what can we do to you
know<00:07:08.240><c> um</c><00:07:09.120><c> test</c><00:07:09.479><c> these</c><00:07:09.759><c> what</c><00:07:09.919><c> can</c><00:07:10.039><c> we</c><00:07:10.160><c> do</c><00:07:10.319><c> to</c>

00:07:10.469 --> 00:07:10.479 align:start position:0%
know um test these what can we do to
 

00:07:10.479 --> 00:07:12.830 align:start position:0%
know um test these what can we do to
make<00:07:10.639><c> sure</c><00:07:10.800><c> that</c><00:07:10.919><c> there</c><00:07:11.120><c> no</c><00:07:11.280><c> bugs</c><00:07:11.759><c> in</c><00:07:12.000><c> these</c>

00:07:12.830 --> 00:07:12.840 align:start position:0%
make sure that there no bugs in these
 

00:07:12.840 --> 00:07:15.309 align:start position:0%
make sure that there no bugs in these
components<00:07:13.840><c> um</c><00:07:14.039><c> and</c><00:07:14.160><c> that's</c><00:07:14.319><c> when</c><00:07:14.479><c> we</c><00:07:14.680><c> started</c>

00:07:15.309 --> 00:07:15.319 align:start position:0%
components um and that's when we started
 

00:07:15.319 --> 00:07:17.830 align:start position:0%
components um and that's when we started
building<00:07:16.199><c> um</c><00:07:16.599><c> kind</c><00:07:16.720><c> of</c><00:07:16.800><c> a</c><00:07:16.919><c> predecessor</c><00:07:17.599><c> to</c>

00:07:17.830 --> 00:07:17.840 align:start position:0%
building um kind of a predecessor to
 

00:07:17.840 --> 00:07:20.270 align:start position:0%
building um kind of a predecessor to
this<00:07:18.000><c> fuzzer</c><00:07:18.800><c> uh</c><00:07:18.960><c> I'm</c><00:07:19.120><c> presenting</c><00:07:19.479><c> today</c><00:07:20.160><c> uh</c>

00:07:20.270 --> 00:07:20.280 align:start position:0%
this fuzzer uh I'm presenting today uh
 

00:07:20.280 --> 00:07:21.430 align:start position:0%
this fuzzer uh I'm presenting today uh
which<00:07:20.400><c> is</c><00:07:20.639><c> called</c>

00:07:21.430 --> 00:07:21.440 align:start position:0%
which is called
 

00:07:21.440 --> 00:07:26.230 align:start position:0%
which is called
Rio<00:07:22.440><c> um</c><00:07:22.840><c> so</c><00:07:23.120><c> the</c><00:07:23.280><c> Rio</c><00:07:24.120><c> is</c><00:07:24.199><c> a</c><00:07:24.319><c> fer</c><00:07:24.720><c> for</c><00:07:25.199><c> the</c><00:07:25.440><c> Gnar</c>

00:07:26.230 --> 00:07:26.240 align:start position:0%
Rio um so the Rio is a fer for the Gnar
 

00:07:26.240 --> 00:07:27.950 align:start position:0%
Rio um so the Rio is a fer for the Gnar
Library<00:07:26.759><c> specifically</c><00:07:27.680><c> and</c><00:07:27.800><c> then</c>

00:07:27.950 --> 00:07:27.960 align:start position:0%
Library specifically and then
 

00:07:27.960 --> 00:07:30.110 align:start position:0%
Library specifically and then
essentially<00:07:28.440><c> this</c><00:07:29.120><c> uh</c><00:07:29.240><c> C</c><00:07:29.520><c> ccus</c><00:07:29.720><c> fuzzer</c><00:07:30.000><c> I'm</c>

00:07:30.110 --> 00:07:30.120 align:start position:0%
essentially this uh C ccus fuzzer I'm
 

00:07:30.120 --> 00:07:31.390 align:start position:0%
essentially this uh C ccus fuzzer I'm
presenting<00:07:30.440><c> today</c><00:07:30.759><c> is</c><00:07:30.879><c> essentially</c><00:07:31.240><c> an</c>

00:07:31.390 --> 00:07:31.400 align:start position:0%
presenting today is essentially an
 

00:07:31.400 --> 00:07:34.309 align:start position:0%
presenting today is essentially an
evolution<00:07:32.199><c> of</c><00:07:32.520><c> this</c><00:07:33.080><c> uh</c><00:07:33.199><c> fuzzer</c><00:07:34.000><c> that</c><00:07:34.120><c> is</c><00:07:34.199><c> a</c>

00:07:34.309 --> 00:07:34.319 align:start position:0%
evolution of this uh fuzzer that is a
 

00:07:34.319 --> 00:07:37.350 align:start position:0%
evolution of this uh fuzzer that is a
bit<00:07:34.479><c> more</c><00:07:34.639><c> General</c><00:07:35.199><c> and</c><00:07:35.599><c> can</c><00:07:35.800><c> Target</c><00:07:36.479><c> multiple</c>

00:07:37.350 --> 00:07:37.360 align:start position:0%
bit more General and can Target multiple
 

00:07:37.360 --> 00:07:39.469 align:start position:0%
bit more General and can Target multiple
um

00:07:39.469 --> 00:07:39.479 align:start position:0%
um
 

00:07:39.479 --> 00:07:42.550 align:start position:0%
um
dsls<00:07:40.479><c> all</c><00:07:40.639><c> right</c><00:07:41.280><c> now</c><00:07:41.879><c> uh</c><00:07:42.080><c> back</c><00:07:42.240><c> to</c>

00:07:42.550 --> 00:07:42.560 align:start position:0%
dsls all right now uh back to
 

00:07:42.560 --> 00:07:44.350 align:start position:0%
dsls all right now uh back to
metamorphic<00:07:43.160><c> testing</c><00:07:43.960><c> so</c><00:07:44.159><c> what</c><00:07:44.240><c> is</c>

00:07:44.350 --> 00:07:44.360 align:start position:0%
metamorphic testing so what is
 

00:07:44.360 --> 00:07:46.189 align:start position:0%
metamorphic testing so what is
metamorphic<00:07:44.919><c> testing</c><00:07:45.639><c> um</c><00:07:45.800><c> I</c><00:07:45.879><c> think</c><00:07:46.039><c> the</c>

00:07:46.189 --> 00:07:46.199 align:start position:0%
metamorphic testing um I think the
 

00:07:46.199 --> 00:07:48.070 align:start position:0%
metamorphic testing um I think the
shortest<00:07:46.560><c> way</c><00:07:46.680><c> to</c><00:07:46.840><c> summarize</c><00:07:47.280><c> it</c><00:07:47.599><c> it's</c><00:07:47.960><c> kind</c>

00:07:48.070 --> 00:07:48.080 align:start position:0%
shortest way to summarize it it's kind
 

00:07:48.080 --> 00:07:51.270 align:start position:0%
shortest way to summarize it it's kind
of<00:07:48.199><c> a</c><00:07:48.319><c> way</c><00:07:48.440><c> to</c><00:07:48.639><c> define</c><00:07:49.000><c> test</c><00:07:49.440><c> oracles</c><00:07:50.440><c> uh</c><00:07:50.560><c> in</c><00:07:50.639><c> a</c>

00:07:51.270 --> 00:07:51.280 align:start position:0%
of a way to define test oracles uh in a
 

00:07:51.280 --> 00:07:54.830 align:start position:0%
of a way to define test oracles uh in a
pretty<00:07:51.639><c> elegant</c><00:07:52.280><c> and</c><00:07:52.639><c> concise</c><00:07:53.159><c> way</c><00:07:54.159><c> so</c><00:07:54.639><c> to</c>

00:07:54.830 --> 00:07:54.840 align:start position:0%
pretty elegant and concise way so to
 

00:07:54.840 --> 00:07:58.869 align:start position:0%
pretty elegant and concise way so to
illustrate<00:07:55.720><c> I've</c><00:07:56.639><c> um</c><00:07:57.639><c> I've</c><00:07:58.159><c> uh</c><00:07:58.400><c> collected</c><00:07:58.759><c> a</c>

00:07:58.869 --> 00:07:58.879 align:start position:0%
illustrate I've um I've uh collected a
 

00:07:58.879 --> 00:08:02.710 align:start position:0%
illustrate I've um I've uh collected a
few<00:07:59.080><c> examples</c><00:07:59.840><c> that</c><00:08:00.360><c> um</c><00:08:01.120><c> yeah</c><00:08:01.759><c> explain</c><00:08:02.199><c> this</c>

00:08:02.710 --> 00:08:02.720 align:start position:0%
few examples that um yeah explain this
 

00:08:02.720 --> 00:08:04.990 align:start position:0%
few examples that um yeah explain this
uh<00:08:02.800><c> and</c><00:08:02.919><c> try</c><00:08:03.159><c> to</c><00:08:03.879><c> um</c><00:08:04.440><c> explain</c><00:08:04.879><c> what</c>

00:08:04.990 --> 00:08:05.000 align:start position:0%
uh and try to um explain what
 

00:08:05.000 --> 00:08:08.029 align:start position:0%
uh and try to um explain what
metamorphic<00:08:05.560><c> testing</c><00:08:05.960><c> is</c><00:08:06.759><c> so</c><00:08:07.680><c> the</c><00:08:07.800><c> first</c>

00:08:08.029 --> 00:08:08.039 align:start position:0%
metamorphic testing is so the first
 

00:08:08.039 --> 00:08:10.270 align:start position:0%
metamorphic testing is so the first
example<00:08:08.319><c> is</c><00:08:08.599><c> how</c><00:08:08.800><c> to</c><00:08:09.360><c> actually</c><00:08:09.680><c> test</c><00:08:10.000><c> that</c><00:08:10.159><c> the</c>

00:08:10.270 --> 00:08:10.280 align:start position:0%
example is how to actually test that the
 

00:08:10.280 --> 00:08:13.390 align:start position:0%
example is how to actually test that the
Sorting<00:08:10.639><c> function</c><00:08:11.479><c> uh</c><00:08:11.599><c> sort</c><00:08:12.319><c> for</c><00:08:12.720><c> an</c><00:08:12.879><c> input</c>

00:08:13.390 --> 00:08:13.400 align:start position:0%
Sorting function uh sort for an input
 

00:08:13.400 --> 00:08:15.589 align:start position:0%
Sorting function uh sort for an input
let's<00:08:13.560><c> say</c><00:08:13.720><c> an</c><00:08:13.840><c> array</c><00:08:14.240><c> of</c><00:08:14.400><c> integers</c><00:08:14.879><c> X</c>

00:08:15.589 --> 00:08:15.599 align:start position:0%
let's say an array of integers X
 

00:08:15.599 --> 00:08:17.510 align:start position:0%
let's say an array of integers X
actually<00:08:15.800><c> does</c><00:08:16.039><c> the</c><00:08:16.159><c> right</c><00:08:16.360><c> thing</c><00:08:17.360><c> well</c>

00:08:17.510 --> 00:08:17.520 align:start position:0%
actually does the right thing well
 

00:08:17.520 --> 00:08:19.950 align:start position:0%
actually does the right thing well
there's<00:08:17.800><c> many</c><00:08:18.039><c> ways</c><00:08:18.280><c> to</c><00:08:18.520><c> to</c><00:08:18.680><c> check</c><00:08:19.039><c> this</c><00:08:19.720><c> but</c>

00:08:19.950 --> 00:08:19.960 align:start position:0%
there's many ways to to check this but
 

00:08:19.960 --> 00:08:22.589 align:start position:0%
there's many ways to to check this but
here's<00:08:20.879><c> uh</c><00:08:21.000><c> a</c><00:08:21.120><c> way</c><00:08:21.280><c> to</c><00:08:21.440><c> check</c><00:08:21.680><c> it</c><00:08:22.240><c> um</c><00:08:22.319><c> using</c>

00:08:22.589 --> 00:08:22.599 align:start position:0%
here's uh a way to check it um using
 

00:08:22.599 --> 00:08:26.629 align:start position:0%
here's uh a way to check it um using
metamorphic<00:08:23.440><c> testing</c><00:08:24.440><c> so</c><00:08:24.720><c> you</c><00:08:24.960><c> take</c><00:08:25.560><c> you</c><00:08:25.720><c> sort</c>

00:08:26.629 --> 00:08:26.639 align:start position:0%
metamorphic testing so you take you sort
 

00:08:26.639 --> 00:08:29.510 align:start position:0%
metamorphic testing so you take you sort
um<00:08:26.879><c> the</c><00:08:27.080><c> input</c><00:08:27.479><c> X</c><00:08:28.479><c> and</c><00:08:28.639><c> then</c><00:08:28.840><c> you</c><00:08:29.000><c> also</c><00:08:29.199><c> sort</c>

00:08:29.510 --> 00:08:29.520 align:start position:0%
um the input X and then you also sort
 

00:08:29.520 --> 00:08:32.430 align:start position:0%
um the input X and then you also sort
for<00:08:30.199><c> uh</c><00:08:30.360><c> X</c><00:08:30.800><c> but</c><00:08:30.919><c> you</c><00:08:31.039><c> Shuffle</c><00:08:31.400><c> it</c><00:08:31.599><c> randomly</c>

00:08:32.430 --> 00:08:32.440 align:start position:0%
for uh X but you Shuffle it randomly
 

00:08:32.440 --> 00:08:35.870 align:start position:0%
for uh X but you Shuffle it randomly
right<00:08:33.200><c> and</c><00:08:33.440><c> these</c><00:08:33.719><c> two</c><00:08:34.719><c> um</c><00:08:35.120><c> the</c><00:08:35.279><c> output</c><00:08:35.640><c> of</c>

00:08:35.870 --> 00:08:35.880 align:start position:0%
right and these two um the output of
 

00:08:35.880 --> 00:08:37.670 align:start position:0%
right and these two um the output of
both<00:08:36.039><c> of</c><00:08:36.240><c> these</c><00:08:36.680><c> invocations</c><00:08:37.279><c> of</c><00:08:37.519><c> the</c>

00:08:37.670 --> 00:08:37.680 align:start position:0%
both of these invocations of the
 

00:08:37.680 --> 00:08:39.589 align:start position:0%
both of these invocations of the
function<00:08:38.440><c> they</c><00:08:38.560><c> should</c><00:08:39.039><c> have</c><00:08:39.240><c> the</c><00:08:39.360><c> same</c>

00:08:39.589 --> 00:08:39.599 align:start position:0%
function they should have the same
 

00:08:39.599 --> 00:08:43.509 align:start position:0%
function they should have the same
output<00:08:40.279><c> right</c><00:08:41.080><c> so</c><00:08:41.719><c> pretty</c><00:08:42.399><c> nice</c><00:08:42.719><c> and</c><00:08:42.919><c> concise</c>

00:08:43.509 --> 00:08:43.519 align:start position:0%
output right so pretty nice and concise
 

00:08:43.519 --> 00:08:46.150 align:start position:0%
output right so pretty nice and concise
uh<00:08:44.040><c> specification</c><00:08:45.040><c> so</c><00:08:45.680><c> let's</c><00:08:45.880><c> look</c><00:08:46.000><c> at</c>

00:08:46.150 --> 00:08:46.160 align:start position:0%
uh specification so let's look at
 

00:08:46.160 --> 00:08:49.790 align:start position:0%
uh specification so let's look at
another<00:08:46.480><c> example</c><00:08:47.399><c> uh</c><00:08:47.600><c> here</c><00:08:48.440><c> um</c><00:08:49.320><c> we</c><00:08:49.480><c> want</c><00:08:49.600><c> to</c>

00:08:49.790 --> 00:08:49.800 align:start position:0%
another example uh here um we want to
 

00:08:49.800 --> 00:08:51.990 align:start position:0%
another example uh here um we want to
test<00:08:50.519><c> um</c><00:08:50.720><c> essentially</c><00:08:51.040><c> some</c><00:08:51.240><c> procedure</c><00:08:51.760><c> for</c>

00:08:51.990 --> 00:08:52.000 align:start position:0%
test um essentially some procedure for
 

00:08:52.000 --> 00:08:54.949 align:start position:0%
test um essentially some procedure for
computing<00:08:52.360><c> the</c><00:08:52.440><c> shortest</c><00:08:52.920><c> path</c><00:08:53.760><c> in</c><00:08:54.480><c> uh</c><00:08:54.640><c> graph</c>

00:08:54.949 --> 00:08:54.959 align:start position:0%
computing the shortest path in uh graph
 

00:08:54.959 --> 00:08:59.069 align:start position:0%
computing the shortest path in uh graph
G<00:08:55.920><c> between</c><00:08:56.279><c> the</c><00:08:56.399><c> nodes</c><00:08:56.880><c> n</c><00:08:57.160><c> and</c><00:08:57.600><c> M</c><00:08:58.600><c> so</c><00:08:58.839><c> how</c><00:08:59.000><c> can</c>

00:08:59.069 --> 00:08:59.079 align:start position:0%
G between the nodes n and M so how can
 

00:08:59.079 --> 00:09:01.150 align:start position:0%
G between the nodes n and M so how can
we<00:08:59.200><c> do</c><00:08:59.320><c> this</c><00:08:59.480><c> this</c><00:08:59.640><c> with</c><00:08:59.760><c> metamorphic</c><00:09:00.320><c> testing</c>

00:09:01.150 --> 00:09:01.160 align:start position:0%
we do this this with metamorphic testing
 

00:09:01.160 --> 00:09:03.470 align:start position:0%
we do this this with metamorphic testing
well<00:09:01.360><c> one</c><00:09:01.519><c> way</c><00:09:01.680><c> to</c><00:09:01.839><c> do</c><00:09:02.000><c> it</c><00:09:02.240><c> is</c><00:09:02.320><c> to</c><00:09:02.519><c> say</c><00:09:03.200><c> you</c><00:09:03.320><c> know</c>

00:09:03.470 --> 00:09:03.480 align:start position:0%
well one way to do it is to say you know
 

00:09:03.480 --> 00:09:07.230 align:start position:0%
well one way to do it is to say you know
the<00:09:03.560><c> shortest</c><00:09:04.040><c> path</c><00:09:04.839><c> um</c><00:09:05.240><c> between</c><00:09:05.680><c> n</c><00:09:06.000><c> and</c><00:09:06.200><c> M</c><00:09:07.120><c> in</c>

00:09:07.230 --> 00:09:07.240 align:start position:0%
the shortest path um between n and M in
 

00:09:07.240 --> 00:09:10.670 align:start position:0%
the shortest path um between n and M in
the<00:09:07.399><c> graph</c><00:09:07.640><c> G</c><00:09:08.640><c> is</c><00:09:08.920><c> less</c><00:09:09.240><c> than</c><00:09:10.000><c> uh</c><00:09:10.120><c> the</c><00:09:10.240><c> shortest</c>

00:09:10.670 --> 00:09:10.680 align:start position:0%
the graph G is less than uh the shortest
 

00:09:10.680 --> 00:09:15.190 align:start position:0%
the graph G is less than uh the shortest
path<00:09:11.279><c> between</c><00:09:11.680><c> n</c><00:09:11.959><c> and</c><00:09:12.320><c> n</c><00:09:12.640><c> and</c><00:09:13.079><c> n</c><00:09:13.320><c> and</c><00:09:13.760><c> M</c><00:09:14.760><c> um</c><00:09:15.040><c> in</c>

00:09:15.190 --> 00:09:15.200 align:start position:0%
path between n and n and n and M um in
 

00:09:15.200 --> 00:09:18.230 align:start position:0%
path between n and n and n and M um in
the<00:09:15.440><c> graph</c><00:09:15.839><c> where</c><00:09:16.040><c> we</c><00:09:16.519><c> take</c><00:09:16.760><c> G</c><00:09:17.200><c> but</c><00:09:17.360><c> we</c><00:09:17.519><c> remove</c>

00:09:18.230 --> 00:09:18.240 align:start position:0%
the graph where we take G but we remove
 

00:09:18.240 --> 00:09:21.389 align:start position:0%
the graph where we take G but we remove
uh<00:09:18.360><c> some</c><00:09:18.600><c> random</c><00:09:18.959><c> Edge</c><00:09:19.560><c> right</c><00:09:20.560><c> because</c><00:09:21.240><c> that</c>

00:09:21.389 --> 00:09:21.399 align:start position:0%
uh some random Edge right because that
 

00:09:21.399 --> 00:09:23.269 align:start position:0%
uh some random Edge right because that
edge<00:09:21.680><c> might</c><00:09:21.880><c> have</c><00:09:22.000><c> been</c><00:09:22.200><c> on</c><00:09:22.440><c> the</c><00:09:22.800><c> the</c><00:09:22.880><c> shortest</c>

00:09:23.269 --> 00:09:23.279 align:start position:0%
edge might have been on the the shortest
 

00:09:23.279 --> 00:09:25.990 align:start position:0%
edge might have been on the the shortest
path<00:09:23.760><c> and</c><00:09:23.920><c> then</c><00:09:24.560><c> the</c><00:09:24.720><c> shortest</c><00:09:25.160><c> path</c><00:09:25.720><c> could</c>

00:09:25.990 --> 00:09:26.000 align:start position:0%
path and then the shortest path could
 

00:09:26.000 --> 00:09:27.990 align:start position:0%
path and then the shortest path could
become<00:09:26.360><c> longer</c>

00:09:27.990 --> 00:09:28.000 align:start position:0%
become longer
 

00:09:28.000 --> 00:09:30.069 align:start position:0%
become longer
right<00:09:29.000><c> so</c>

00:09:30.069 --> 00:09:30.079 align:start position:0%
right so
 

00:09:30.079 --> 00:09:32.630 align:start position:0%
right so
we<00:09:30.200><c> can</c><00:09:30.399><c> also</c><00:09:31.040><c> do</c><00:09:31.440><c> apply</c><00:09:31.800><c> the</c><00:09:31.959><c> same</c><00:09:32.279><c> kind</c><00:09:32.399><c> of</c>

00:09:32.630 --> 00:09:32.640 align:start position:0%
we can also do apply the same kind of
 

00:09:32.640 --> 00:09:34.910 align:start position:0%
we can also do apply the same kind of
principle<00:09:33.000><c> to</c><00:09:33.200><c> more</c><00:09:33.440><c> complex</c><00:09:34.279><c> uh</c><00:09:34.440><c> components</c>

00:09:34.910 --> 00:09:34.920 align:start position:0%
principle to more complex uh components
 

00:09:34.920 --> 00:09:37.990 align:start position:0%
principle to more complex uh components
like<00:09:35.040><c> a</c><00:09:35.480><c> entire</c><00:09:35.800><c> compiler</c><00:09:36.440><c> right</c><00:09:37.200><c> so</c><00:09:37.800><c> here's</c>

00:09:37.990 --> 00:09:38.000 align:start position:0%
like a entire compiler right so here's
 

00:09:38.000 --> 00:09:39.750 align:start position:0%
like a entire compiler right so here's
an<00:09:38.200><c> example</c><00:09:38.560><c> of</c><00:09:38.720><c> how</c><00:09:38.880><c> to</c><00:09:39.040><c> do</c><00:09:39.240><c> this</c><00:09:39.600><c> with</c>

00:09:39.750 --> 00:09:39.760 align:start position:0%
an example of how to do this with
 

00:09:39.760 --> 00:09:42.870 align:start position:0%
an example of how to do this with
metamorphic<00:09:40.399><c> testing</c><00:09:41.399><c> um</c><00:09:42.279><c> when</c><00:09:42.399><c> you</c><00:09:42.560><c> take</c><00:09:42.720><c> a</c>

00:09:42.870 --> 00:09:42.880 align:start position:0%
metamorphic testing um when you take a
 

00:09:42.880 --> 00:09:45.069 align:start position:0%
metamorphic testing um when you take a
program<00:09:43.200><c> p</c><00:09:44.000><c> and</c><00:09:44.160><c> you</c><00:09:44.320><c> compile</c><00:09:44.680><c> it</c><00:09:44.800><c> and</c><00:09:44.959><c> then</c>

00:09:45.069 --> 00:09:45.079 align:start position:0%
program p and you compile it and then
 

00:09:45.079 --> 00:09:47.150 align:start position:0%
program p and you compile it and then
run<00:09:45.279><c> it</c><00:09:46.000><c> you</c><00:09:46.120><c> should</c><00:09:46.360><c> essentially</c><00:09:46.720><c> see</c><00:09:47.000><c> the</c>

00:09:47.150 --> 00:09:47.160 align:start position:0%
run it you should essentially see the
 

00:09:47.160 --> 00:09:50.230 align:start position:0%
run it you should essentially see the
same<00:09:47.399><c> behavior</c><00:09:48.240><c> as</c><00:09:48.399><c> when</c><00:09:48.519><c> you</c><00:09:48.720><c> take</c><00:09:49.680><c> um</c><00:09:50.079><c> the</c>

00:09:50.230 --> 00:09:50.240 align:start position:0%
same behavior as when you take um the
 

00:09:50.240 --> 00:09:52.710 align:start position:0%
same behavior as when you take um the
program<00:09:50.560><c> P</c><00:09:51.160><c> but</c><00:09:51.320><c> you</c><00:09:51.600><c> add</c><00:09:51.880><c> some</c><00:09:52.160><c> dead</c><00:09:52.440><c> code</c>

00:09:52.710 --> 00:09:52.720 align:start position:0%
program P but you add some dead code
 

00:09:52.720 --> 00:09:55.230 align:start position:0%
program P but you add some dead code
somewhere<00:09:53.279><c> randomly</c><00:09:54.279><c> right</c><00:09:54.640><c> and</c><00:09:54.760><c> you</c><00:09:54.920><c> compile</c>

00:09:55.230 --> 00:09:55.240 align:start position:0%
somewhere randomly right and you compile
 

00:09:55.240 --> 00:09:57.350 align:start position:0%
somewhere randomly right and you compile
it<00:09:55.399><c> and</c><00:09:55.519><c> you</c><00:09:55.640><c> run</c><00:09:55.839><c> it</c><00:09:56.480><c> shouldn't</c><00:09:56.800><c> matter</c><00:09:57.200><c> right</c>

00:09:57.350 --> 00:09:57.360 align:start position:0%
it and you run it shouldn't matter right
 

00:09:57.360 --> 00:09:58.509 align:start position:0%
it and you run it shouldn't matter right
should<00:09:57.560><c> give</c><00:09:57.680><c> you</c><00:09:57.800><c> the</c><00:09:57.920><c> same</c><00:09:58.120><c> output</c>

00:09:58.509 --> 00:09:58.519 align:start position:0%
should give you the same output
 

00:09:58.519 --> 00:10:01.269 align:start position:0%
should give you the same output
essentially

00:10:01.269 --> 00:10:01.279 align:start position:0%
essentially
 

00:10:01.279 --> 00:10:05.310 align:start position:0%
essentially
so<00:10:02.279><c> with</c><00:10:02.480><c> this</c><00:10:03.120><c> um</c><00:10:04.000><c> let's</c><00:10:04.200><c> look</c><00:10:04.360><c> at</c><00:10:04.600><c> how</c><00:10:04.800><c> we</c><00:10:04.959><c> can</c>

00:10:05.310 --> 00:10:05.320 align:start position:0%
so with this um let's look at how we can
 

00:10:05.320 --> 00:10:06.990 align:start position:0%
so with this um let's look at how we can
apply<00:10:05.800><c> kind</c><00:10:05.920><c> of</c><00:10:06.040><c> the</c><00:10:06.160><c> same</c><00:10:06.519><c> reasoning</c>

00:10:06.990 --> 00:10:07.000 align:start position:0%
apply kind of the same reasoning
 

00:10:07.000 --> 00:10:10.190 align:start position:0%
apply kind of the same reasoning
principle<00:10:08.000><c> to</c><00:10:08.680><c> uh</c><00:10:08.839><c> zero</c><00:10:09.200><c> knowledge</c><00:10:09.839><c> uh</c>

00:10:10.190 --> 00:10:10.200 align:start position:0%
principle to uh zero knowledge uh
 

00:10:10.200 --> 00:10:13.230 align:start position:0%
principle to uh zero knowledge uh
circuits<00:10:11.200><c> so</c><00:10:11.399><c> the</c><00:10:11.519><c> fuzzer</c><00:10:11.920><c> what</c><00:10:12.040><c> it</c><00:10:12.200><c> does</c><00:10:12.680><c> is</c>

00:10:13.230 --> 00:10:13.240 align:start position:0%
circuits so the fuzzer what it does is
 

00:10:13.240 --> 00:10:15.750 align:start position:0%
circuits so the fuzzer what it does is
uh<00:10:13.320><c> it</c><00:10:13.440><c> first</c><00:10:13.640><c> generates</c><00:10:14.040><c> a</c><00:10:14.200><c> random</c><00:10:14.760><c> circuit</c>

00:10:15.750 --> 00:10:15.760 align:start position:0%
uh it first generates a random circuit
 

00:10:15.760 --> 00:10:19.350 align:start position:0%
uh it first generates a random circuit
uh<00:10:16.279><c> C1</c><00:10:17.279><c> and</c><00:10:17.480><c> then</c><00:10:17.959><c> it</c><00:10:18.480><c> applies</c><00:10:18.839><c> a</c><00:10:19.040><c> random</c>

00:10:19.350 --> 00:10:19.360 align:start position:0%
uh C1 and then it applies a random
 

00:10:19.360 --> 00:10:21.590 align:start position:0%
uh C1 and then it applies a random
transformation<00:10:20.040><c> to</c><00:10:20.240><c> C1</c><00:10:20.760><c> to</c><00:10:20.959><c> get</c><00:10:21.160><c> a</c><00:10:21.399><c> new</c>

00:10:21.590 --> 00:10:21.600 align:start position:0%
transformation to C1 to get a new
 

00:10:21.600 --> 00:10:24.430 align:start position:0%
transformation to C1 to get a new
circuit<00:10:22.079><c> C2</c><00:10:22.839><c> so</c><00:10:23.000><c> now</c><00:10:23.120><c> we</c><00:10:23.200><c> have</c><00:10:23.360><c> two</c><00:10:23.560><c> circuits</c>

00:10:24.430 --> 00:10:24.440 align:start position:0%
circuit C2 so now we have two circuits
 

00:10:24.440 --> 00:10:26.790 align:start position:0%
circuit C2 so now we have two circuits
that<00:10:24.560><c> are</c><00:10:25.000><c> essentially</c>

00:10:26.790 --> 00:10:26.800 align:start position:0%
that are essentially
 

00:10:26.800 --> 00:10:28.550 align:start position:0%
that are essentially
syntactically<00:10:27.800><c> perhaps</c><00:10:28.120><c> completely</c>

00:10:28.550 --> 00:10:28.560 align:start position:0%
syntactically perhaps completely
 

00:10:28.560 --> 00:10:30.310 align:start position:0%
syntactically perhaps completely
different<00:10:29.200><c> uh</c><00:10:29.440><c> but</c><00:10:29.560><c> semantically</c><00:10:30.200><c> they</c>

00:10:30.310 --> 00:10:30.320 align:start position:0%
different uh but semantically they
 

00:10:30.320 --> 00:10:32.910 align:start position:0%
different uh but semantically they
should<00:10:30.640><c> have</c><00:10:31.279><c> uh</c><00:10:31.399><c> the</c><00:10:31.519><c> same</c>

00:10:32.910 --> 00:10:32.920 align:start position:0%
should have uh the same
 

00:10:32.920 --> 00:10:36.030 align:start position:0%
should have uh the same
behavior<00:10:33.920><c> and</c><00:10:34.760><c> now</c><00:10:35.000><c> we</c><00:10:35.279><c> the</c><00:10:35.399><c> fuzzer</c><00:10:35.720><c> generates</c>

00:10:36.030 --> 00:10:36.040 align:start position:0%
behavior and now we the fuzzer generates
 

00:10:36.040 --> 00:10:40.710 align:start position:0%
behavior and now we the fuzzer generates
an<00:10:36.200><c> input</c><00:10:36.680><c> I</c><00:10:37.760><c> and</c><00:10:38.760><c> um</c><00:10:39.120><c> invokes</c><00:10:39.959><c> the</c><00:10:40.240><c> processing</c>

00:10:40.710 --> 00:10:40.720 align:start position:0%
an input I and um invokes the processing
 

00:10:40.720 --> 00:10:42.310 align:start position:0%
an input I and um invokes the processing
pipelines<00:10:41.120><c> for</c><00:10:41.320><c> both</c><00:10:41.440><c> of</c><00:10:41.639><c> these</c>

00:10:42.310 --> 00:10:42.320 align:start position:0%
pipelines for both of these
 

00:10:42.320 --> 00:10:44.949 align:start position:0%
pipelines for both of these
circuits<00:10:43.320><c> um</c><00:10:44.040><c> and</c><00:10:44.360><c> if</c><00:10:44.519><c> there's</c><00:10:44.760><c> any</c>

00:10:44.949 --> 00:10:44.959 align:start position:0%
circuits um and if there's any
 

00:10:44.959 --> 00:10:47.190 align:start position:0%
circuits um and if there's any
difference<00:10:45.519><c> in</c><00:10:46.040><c> you</c><00:10:46.160><c> know</c><00:10:46.320><c> the</c><00:10:46.480><c> output</c><00:10:46.920><c> or</c><00:10:47.040><c> the</c>

00:10:47.190 --> 00:10:47.200 align:start position:0%
difference in you know the output or the
 

00:10:47.200 --> 00:10:49.670 align:start position:0%
difference in you know the output or the
behavior<00:10:48.040><c> then</c><00:10:48.399><c> that's</c><00:10:48.600><c> a</c><00:10:48.760><c> bug</c><00:10:49.120><c> somewhere</c><00:10:49.519><c> in</c>

00:10:49.670 --> 00:10:49.680 align:start position:0%
behavior then that's a bug somewhere in
 

00:10:49.680 --> 00:10:51.190 align:start position:0%
behavior then that's a bug somewhere in
this<00:10:50.040><c> processing</c>

00:10:51.190 --> 00:10:51.200 align:start position:0%
this processing
 

00:10:51.200 --> 00:10:54.910 align:start position:0%
this processing
pipeline<00:10:52.200><c> so</c><00:10:52.399><c> for</c><00:10:52.560><c> instance</c><00:10:53.240><c> um</c><00:10:54.040><c> the</c><00:10:54.560><c> for</c><00:10:54.760><c> one</c>

00:10:54.910 --> 00:10:54.920 align:start position:0%
pipeline so for instance um the for one
 

00:10:54.920 --> 00:10:56.670 align:start position:0%
pipeline so for instance um the for one
circuit<00:10:55.320><c> we</c><00:10:55.440><c> might</c><00:10:55.839><c> not</c><00:10:56.040><c> be</c><00:10:56.120><c> able</c><00:10:56.279><c> to</c><00:10:56.399><c> generate</c>

00:10:56.670 --> 00:10:56.680 align:start position:0%
circuit we might not be able to generate
 

00:10:56.680 --> 00:10:58.829 align:start position:0%
circuit we might not be able to generate
a<00:10:56.839><c> witness</c><00:10:57.320><c> but</c><00:10:57.440><c> for</c><00:10:57.600><c> the</c><00:10:57.720><c> other</c><00:10:57.880><c> one</c><00:10:58.160><c> we</c><00:10:58.279><c> would</c>

00:10:58.829 --> 00:10:58.839 align:start position:0%
a witness but for the other one we would
 

00:10:58.839 --> 00:11:00.310 align:start position:0%
a witness but for the other one we would
then<00:10:59.320><c> there's</c><00:10:59.440><c> probably</c><00:10:59.680><c> a</c><00:10:59.760><c> bar</c><00:11:00.000><c> somewhere</c><00:11:00.240><c> in</c>

00:11:00.310 --> 00:11:00.320 align:start position:0%
then there's probably a bar somewhere in
 

00:11:00.320 --> 00:11:03.829 align:start position:0%
then there's probably a bar somewhere in
the<00:11:00.440><c> compiler</c><00:11:01.000><c> or</c><00:11:01.120><c> in</c><00:11:01.200><c> the</c><00:11:01.320><c> witness</c>

00:11:03.829 --> 00:11:03.839 align:start position:0%
 
 

00:11:03.839 --> 00:11:07.069 align:start position:0%
 
generator<00:11:04.880><c> so</c><00:11:05.880><c> um</c><00:11:06.079><c> let's</c><00:11:06.240><c> look</c><00:11:06.399><c> at</c><00:11:06.560><c> a</c><00:11:06.680><c> few</c><00:11:06.880><c> of</c>

00:11:07.069 --> 00:11:07.079 align:start position:0%
generator so um let's look at a few of
 

00:11:07.079 --> 00:11:09.629 align:start position:0%
generator so um let's look at a few of
these<00:11:07.560><c> uh</c><00:11:07.880><c> Transformations</c><00:11:08.880><c> uh</c><00:11:09.000><c> to</c><00:11:09.160><c> kind</c><00:11:09.240><c> of</c>

00:11:09.629 --> 00:11:09.639 align:start position:0%
these uh Transformations uh to kind of
 

00:11:09.639 --> 00:11:12.230 align:start position:0%
these uh Transformations uh to kind of
understand<00:11:09.880><c> how</c><00:11:10.079><c> the</c><00:11:10.160><c> fuzzer</c><00:11:10.600><c> does</c><00:11:10.959><c> this</c><00:11:11.959><c> um</c>

00:11:12.230 --> 00:11:12.240 align:start position:0%
understand how the fuzzer does this um
 

00:11:12.240 --> 00:11:14.190 align:start position:0%
understand how the fuzzer does this um
so<00:11:12.440><c> here's</c><00:11:12.600><c> a</c><00:11:12.760><c> very</c><00:11:12.920><c> simple</c><00:11:13.200><c> transformation</c>

00:11:14.190 --> 00:11:14.200 align:start position:0%
so here's a very simple transformation
 

00:11:14.200 --> 00:11:16.230 align:start position:0%
so here's a very simple transformation
uh<00:11:14.320><c> if</c><00:11:14.399><c> you</c><00:11:14.600><c> have</c><00:11:15.279><c> somewhere</c><00:11:15.560><c> in</c><00:11:15.680><c> your</c><00:11:15.839><c> circuit</c>

00:11:16.230 --> 00:11:16.240 align:start position:0%
uh if you have somewhere in your circuit
 

00:11:16.240 --> 00:11:20.190 align:start position:0%
uh if you have somewhere in your circuit
an<00:11:16.440><c> expression</c><00:11:17.000><c> e</c><00:11:18.000><c> uh</c><00:11:18.200><c> you</c><00:11:18.279><c> can</c><00:11:18.480><c> always</c><00:11:19.200><c> apply</c>

00:11:20.190 --> 00:11:20.200 align:start position:0%
an expression e uh you can always apply
 

00:11:20.200 --> 00:11:21.509 align:start position:0%
an expression e uh you can always apply
um<00:11:20.440><c> you</c><00:11:20.560><c> can</c><00:11:20.680><c> always</c><00:11:20.880><c> multiply</c><00:11:21.399><c> the</c>

00:11:21.509 --> 00:11:21.519 align:start position:0%
um you can always multiply the
 

00:11:21.519 --> 00:11:23.750 align:start position:0%
um you can always multiply the
expression<00:11:22.120><c> by</c><00:11:22.560><c> one</c><00:11:23.000><c> right</c><00:11:23.320><c> that</c><00:11:23.440><c> should</c><00:11:23.600><c> not</c>

00:11:23.750 --> 00:11:23.760 align:start position:0%
expression by one right that should not
 

00:11:23.760 --> 00:11:26.750 align:start position:0%
expression by one right that should not
change<00:11:24.120><c> anything</c><00:11:25.079><c> um</c><00:11:25.920><c> or</c><00:11:26.160><c> you</c><00:11:26.240><c> can</c><00:11:26.440><c> also</c>

00:11:26.750 --> 00:11:26.760 align:start position:0%
change anything um or you can also
 

00:11:26.760 --> 00:11:28.949 align:start position:0%
change anything um or you can also
divide<00:11:27.120><c> by</c><00:11:27.320><c> one</c><00:11:28.000><c> again</c><00:11:28.279><c> shouldn't</c><00:11:28.600><c> have</c><00:11:28.760><c> any</c>

00:11:28.949 --> 00:11:28.959 align:start position:0%
divide by one again shouldn't have any
 

00:11:28.959 --> 00:11:31.269 align:start position:0%
divide by one again shouldn't have any
effect<00:11:29.480><c> on</c><00:11:30.120><c> the</c>

00:11:31.269 --> 00:11:31.279 align:start position:0%
effect on the
 

00:11:31.279 --> 00:11:34.629 align:start position:0%
effect on the
circuits<00:11:32.320><c> um</c><00:11:33.320><c> another</c><00:11:33.600><c> transformation</c><00:11:34.160><c> is</c><00:11:34.240><c> to</c>

00:11:34.629 --> 00:11:34.639 align:start position:0%
circuits um another transformation is to
 

00:11:34.639 --> 00:11:38.590 align:start position:0%
circuits um another transformation is to
basically<00:11:35.600><c> negate</c><00:11:36.320><c> the</c><00:11:36.560><c> expression</c><00:11:36.959><c> e</c>

00:11:38.590 --> 00:11:38.600 align:start position:0%
basically negate the expression e
 

00:11:38.600 --> 00:11:41.030 align:start position:0%
basically negate the expression e
twice<00:11:39.600><c> or</c><00:11:39.839><c> you</c><00:11:39.920><c> can</c><00:11:40.120><c> also</c><00:11:40.399><c> apply</c><00:11:40.720><c> other</c>

00:11:41.030 --> 00:11:41.040 align:start position:0%
twice or you can also apply other
 

00:11:41.040 --> 00:11:44.910 align:start position:0%
twice or you can also apply other
Transformations<00:11:42.040><c> like</c><00:11:42.720><c> um</c><00:11:43.519><c> swapping</c><00:11:44.519><c> um</c><00:11:44.760><c> the</c>

00:11:44.910 --> 00:11:44.920 align:start position:0%
Transformations like um swapping um the
 

00:11:44.920 --> 00:11:48.069 align:start position:0%
Transformations like um swapping um the
two<00:11:45.120><c> oper</c><00:11:45.639><c> of</c><00:11:45.760><c> a</c>

00:11:48.069 --> 00:11:48.079 align:start position:0%
 
 

00:11:48.079 --> 00:11:51.710 align:start position:0%
 
multiplication<00:11:49.079><c> and</c><00:11:49.160><c> then</c><00:11:49.320><c> we</c><00:11:49.440><c> also</c><00:11:49.720><c> have</c><00:11:50.720><c> um</c>

00:11:51.710 --> 00:11:51.720 align:start position:0%
multiplication and then we also have um
 

00:11:51.720 --> 00:11:53.949 align:start position:0%
multiplication and then we also have um
um<00:11:52.079><c> some</c><00:11:52.600><c> Transformations</c><00:11:53.399><c> that</c><00:11:53.600><c> use</c>

00:11:53.949 --> 00:11:53.959 align:start position:0%
um some Transformations that use
 

00:11:53.959 --> 00:11:55.710 align:start position:0%
um some Transformations that use
essentially<00:11:54.360><c> new</c><00:11:54.760><c> randomly</c><00:11:55.200><c> generated</c>

00:11:55.710 --> 00:11:55.720 align:start position:0%
essentially new randomly generated
 

00:11:55.720 --> 00:11:57.710 align:start position:0%
essentially new randomly generated
Expressions<00:11:56.720><c> so</c><00:11:56.959><c> here</c><00:11:57.120><c> for</c><00:11:57.240><c> instance</c><00:11:57.519><c> we</c>

00:11:57.710 --> 00:11:57.720 align:start position:0%
Expressions so here for instance we
 

00:11:57.720 --> 00:12:00.990 align:start position:0%
Expressions so here for instance we
replace<00:11:58.240><c> an</c><00:11:58.399><c> expression</c><00:11:58.760><c> e</c><00:11:59.720><c> with</c><00:12:00.120><c> e</c><00:12:00.639><c> minus</c>

00:12:00.990 --> 00:12:01.000 align:start position:0%
replace an expression e with e minus
 

00:12:01.000 --> 00:12:03.590 align:start position:0%
replace an expression e with e minus
some<00:12:01.320><c> random</c><00:12:01.639><c> expression</c><00:12:02.480><c> plus</c><00:12:03.000><c> some</c><00:12:03.279><c> random</c>

00:12:03.590 --> 00:12:03.600 align:start position:0%
some random expression plus some random
 

00:12:03.600 --> 00:12:05.750 align:start position:0%
some random expression plus some random
expression<00:12:04.360><c> right</c><00:12:04.680><c> that</c><00:12:04.800><c> should</c><00:12:05.079><c> again</c><00:12:05.519><c> not</c>

00:12:05.750 --> 00:12:05.760 align:start position:0%
expression right that should again not
 

00:12:05.760 --> 00:12:08.030 align:start position:0%
expression right that should again not
have<00:12:05.959><c> any</c><00:12:06.200><c> effect</c>

00:12:08.030 --> 00:12:08.040 align:start position:0%
have any effect
 

00:12:08.040 --> 00:12:12.150 align:start position:0%
have any effect
um<00:12:09.040><c> and</c><00:12:09.880><c> we</c><00:12:10.040><c> have</c><00:12:10.160><c> a</c><00:12:10.440><c> small</c><00:12:10.760><c> DSL</c><00:12:11.600><c> for</c>

00:12:12.150 --> 00:12:12.160 align:start position:0%
um and we have a small DSL for
 

00:12:12.160 --> 00:12:13.910 align:start position:0%
um and we have a small DSL for
describing<00:12:12.760><c> these</c><00:12:13.160><c> circuits</c><00:12:13.600><c> so</c><00:12:13.720><c> there's</c>

00:12:13.910 --> 00:12:13.920 align:start position:0%
describing these circuits so there's
 

00:12:13.920 --> 00:12:16.350 align:start position:0%
describing these circuits so there's
many<00:12:14.120><c> more</c><00:12:14.600><c> of</c><00:12:14.800><c> these</c><00:12:14.959><c> transform</c>

00:12:16.350 --> 00:12:16.360 align:start position:0%
many more of these transform
 

00:12:16.360 --> 00:12:19.230 align:start position:0%
many more of these transform
formations<00:12:17.360><c> um</c><00:12:17.839><c> So</c><00:12:18.199><c> currently</c><00:12:18.560><c> we</c><00:12:18.720><c> support</c>

00:12:19.230 --> 00:12:19.240 align:start position:0%
formations um So currently we support
 

00:12:19.240 --> 00:12:22.629 align:start position:0%
formations um So currently we support
roughly<00:12:19.720><c> 90</c><00:12:20.560><c> uh</c><00:12:20.680><c> such</c><00:12:21.079><c> rules</c><00:12:22.079><c> but</c><00:12:22.240><c> you</c><00:12:22.320><c> can</c>

00:12:22.629 --> 00:12:22.639 align:start position:0%
roughly 90 uh such rules but you can
 

00:12:22.639 --> 00:12:24.710 align:start position:0%
roughly 90 uh such rules but you can
easily<00:12:22.959><c> add</c><00:12:23.240><c> more</c><00:12:23.399><c> of</c><00:12:23.600><c> them</c><00:12:23.839><c> and</c><00:12:24.160><c> think</c><00:12:24.360><c> of</c><00:12:24.519><c> new</c>

00:12:24.710 --> 00:12:24.720 align:start position:0%
easily add more of them and think of new
 

00:12:24.720 --> 00:12:27.150 align:start position:0%
easily add more of them and think of new
ones<00:12:25.079><c> if</c><00:12:25.199><c> you</c><00:12:25.360><c> want</c><00:12:25.639><c> like</c>

00:12:27.150 --> 00:12:27.160 align:start position:0%
ones if you want like
 

00:12:27.160 --> 00:12:30.550 align:start position:0%
ones if you want like
to<00:12:28.160><c> so</c><00:12:28.720><c> uh</c><00:12:28.800><c> we</c><00:12:28.920><c> also</c><00:12:29.240><c> found</c><00:12:29.560><c> a</c><00:12:29.680><c> number</c><00:12:29.880><c> of</c><00:12:30.000><c> bugs</c>

00:12:30.550 --> 00:12:30.560 align:start position:0%
to so uh we also found a number of bugs
 

00:12:30.560 --> 00:12:35.030 align:start position:0%
to so uh we also found a number of bugs
in<00:12:31.279><c> um</c><00:12:31.920><c> the</c><00:12:32.920><c> different</c><00:12:33.600><c> uh</c><00:12:33.920><c> pipelines</c><00:12:34.920><c> and</c>

00:12:35.030 --> 00:12:35.040 align:start position:0%
in um the different uh pipelines and
 

00:12:35.040 --> 00:12:38.430 align:start position:0%
in um the different uh pipelines and
let's<00:12:35.240><c> look</c><00:12:35.360><c> at</c><00:12:35.519><c> a</c><00:12:36.000><c> few</c><00:12:36.240><c> of</c><00:12:36.399><c> them</c><00:12:37.040><c> um</c><00:12:38.040><c> just</c><00:12:38.199><c> to</c>

00:12:38.430 --> 00:12:38.440 align:start position:0%
let's look at a few of them um just to
 

00:12:38.440 --> 00:12:40.430 align:start position:0%
let's look at a few of them um just to
kind<00:12:38.560><c> of</c><00:12:38.720><c> give</c><00:12:38.839><c> you</c><00:12:39.079><c> the</c><00:12:39.440><c> the</c><00:12:39.600><c> idea</c><00:12:39.959><c> and</c><00:12:40.120><c> show</c>

00:12:40.430 --> 00:12:40.440 align:start position:0%
kind of give you the the idea and show
 

00:12:40.440 --> 00:12:42.750 align:start position:0%
kind of give you the the idea and show
give<00:12:40.560><c> you</c><00:12:40.639><c> a</c><00:12:40.760><c> concrete</c><00:12:41.120><c> example</c><00:12:42.000><c> um</c><00:12:42.519><c> that</c><00:12:42.639><c> you</c>

00:12:42.750 --> 00:12:42.760 align:start position:0%
give you a concrete example um that you
 

00:12:42.760 --> 00:12:47.150 align:start position:0%
give you a concrete example um that you
can<00:12:43.720><c> look</c><00:12:44.399><c> at</c><00:12:45.399><c> so</c><00:12:45.680><c> here</c><00:12:45.880><c> on</c><00:12:46.040><c> the</c><00:12:46.199><c> left</c><00:12:46.920><c> uh</c><00:12:47.040><c> we</c>

00:12:47.150 --> 00:12:47.160 align:start position:0%
can look at so here on the left uh we
 

00:12:47.160 --> 00:12:51.870 align:start position:0%
can look at so here on the left uh we
see<00:12:48.079><c> uh</c><00:12:48.199><c> a</c><00:12:48.360><c> small</c><00:12:49.320><c> uh</c><00:12:49.480><c> example</c><00:12:50.279><c> circuit</c><00:12:51.240><c> in</c><00:12:51.680><c> in</c>

00:12:51.870 --> 00:12:51.880 align:start position:0%
see uh a small uh example circuit in in
 

00:12:51.880 --> 00:12:55.629 align:start position:0%
see uh a small uh example circuit in in
the<00:12:52.199><c> circuit</c><00:12:52.720><c> circum</c><00:12:53.680><c> um</c><00:12:54.440><c> language</c><00:12:55.440><c> uh</c><00:12:55.560><c> you</c>

00:12:55.629 --> 00:12:55.639 align:start position:0%
the circuit circum um language uh you
 

00:12:55.639 --> 00:12:57.870 align:start position:0%
the circuit circum um language uh you
can<00:12:55.760><c> also</c><00:12:55.959><c> look</c><00:12:56.120><c> up</c><00:12:56.480><c> the</c><00:12:56.639><c> GitHub</c><00:12:57.000><c> issue</c><00:12:57.639><c> uh</c><00:12:57.760><c> if</c>

00:12:57.870 --> 00:12:57.880 align:start position:0%
can also look up the GitHub issue uh if
 

00:12:57.880 --> 00:12:59.790 align:start position:0%
can also look up the GitHub issue uh if
you<00:12:58.199><c> if</c><00:12:58.320><c> you'd</c><00:12:58.519><c> like</c><00:12:58.680><c> to</c>

00:12:59.790 --> 00:12:59.800 align:start position:0%
you if you'd like to
 

00:12:59.800 --> 00:13:02.110 align:start position:0%
you if you'd like to
um<00:13:00.399><c> but</c><00:13:00.519><c> this</c><00:13:00.720><c> essentially</c><00:13:01.040><c> a</c><00:13:01.120><c> minimized</c><00:13:01.959><c> uh</c>

00:13:02.110 --> 00:13:02.120 align:start position:0%
um but this essentially a minimized uh
 

00:13:02.120 --> 00:13:05.629 align:start position:0%
um but this essentially a minimized uh
cleaned<00:13:02.480><c> up</c><00:13:03.440><c> um</c><00:13:04.440><c> version</c><00:13:04.800><c> of</c><00:13:04.959><c> the</c>

00:13:05.629 --> 00:13:05.639 align:start position:0%
cleaned up um version of the
 

00:13:05.639 --> 00:13:09.110 align:start position:0%
cleaned up um version of the
circuit<00:13:06.639><c> um</c><00:13:06.920><c> and</c><00:13:07.800><c> as</c><00:13:07.880><c> you</c><00:13:08.000><c> can</c><00:13:08.120><c> see</c><00:13:08.279><c> there's</c><00:13:08.480><c> a</c>

00:13:09.110 --> 00:13:09.120 align:start position:0%
circuit um and as you can see there's a
 

00:13:09.120 --> 00:13:11.350 align:start position:0%
circuit um and as you can see there's a
variable<00:13:09.600><c> P</c><00:13:10.279><c> um</c><00:13:10.560><c> in</c><00:13:10.720><c> practice</c><00:13:11.040><c> this</c><00:13:11.199><c> is</c>

00:13:11.350 --> 00:13:11.360 align:start position:0%
variable P um in practice this is
 

00:13:11.360 --> 00:13:13.110 align:start position:0%
variable P um in practice this is
essentially<00:13:11.720><c> just</c><00:13:11.800><c> a</c><00:13:12.000><c> constant</c><00:13:12.760><c> uh</c><00:13:12.959><c> just</c>

00:13:13.110 --> 00:13:13.120 align:start position:0%
essentially just a constant uh just
 

00:13:13.120 --> 00:13:18.189 align:start position:0%
essentially just a constant uh just
didn't<00:13:13.399><c> fit</c><00:13:13.639><c> on</c><00:13:14.760><c> the</c><00:13:15.760><c> on</c><00:13:15.920><c> the</c><00:13:16.040><c> slide</c><00:13:16.639><c> so</c><00:13:16.959><c> I</c><00:13:17.480><c> um</c>

00:13:18.189 --> 00:13:18.199 align:start position:0%
didn't fit on the on the slide so I um
 

00:13:18.199 --> 00:13:22.069 align:start position:0%
didn't fit on the on the slide so I um
yeah<00:13:18.920><c> put</c><00:13:19.079><c> it</c><00:13:19.199><c> at</c><00:13:19.320><c> the</c><00:13:19.440><c> bottom</c><00:13:20.399><c> um</c><00:13:21.399><c> but</c><00:13:21.880><c> think</c>

00:13:22.069 --> 00:13:22.079 align:start position:0%
yeah put it at the bottom um but think
 

00:13:22.079 --> 00:13:24.670 align:start position:0%
yeah put it at the bottom um but think
of<00:13:22.320><c> P</c><00:13:22.600><c> just</c><00:13:22.760><c> as</c><00:13:22.920><c> a</c><00:13:23.199><c> normal</c><00:13:23.519><c> constant</c><00:13:23.880><c> in</c><00:13:24.040><c> your</c>

00:13:24.670 --> 00:13:24.680 align:start position:0%
of P just as a normal constant in your
 

00:13:24.680 --> 00:13:27.550 align:start position:0%
of P just as a normal constant in your
program<00:13:25.680><c> and</c><00:13:25.839><c> now</c><00:13:26.079><c> what</c><00:13:26.199><c> the</c><00:13:26.279><c> fuzzer</c><00:13:27.199><c> does</c><00:13:27.440><c> is</c>

00:13:27.550 --> 00:13:27.560 align:start position:0%
program and now what the fuzzer does is
 

00:13:27.560 --> 00:13:29.150 align:start position:0%
program and now what the fuzzer does is
it<00:13:27.720><c> generates</c><00:13:28.079><c> a</c><00:13:28.199><c> transformation</c><00:13:28.800><c> of</c><00:13:28.959><c> this</c>

00:13:29.150 --> 00:13:29.160 align:start position:0%
it generates a transformation of this
 

00:13:29.160 --> 00:13:31.590 align:start position:0%
it generates a transformation of this
this<00:13:29.360><c> circuit</c><00:13:30.360><c> which</c><00:13:30.480><c> is</c><00:13:30.680><c> the</c><00:13:30.800><c> one</c><00:13:31.320><c> uh</c><00:13:31.440><c> that's</c>

00:13:31.590 --> 00:13:31.600 align:start position:0%
this circuit which is the one uh that's
 

00:13:31.600 --> 00:13:35.230 align:start position:0%
this circuit which is the one uh that's
shown<00:13:31.800><c> on</c><00:13:31.920><c> the</c><00:13:32.320><c> right</c><00:13:33.320><c> and</c><00:13:33.560><c> here</c><00:13:34.560><c> it</c><00:13:34.720><c> applies</c><00:13:35.079><c> a</c>

00:13:35.230 --> 00:13:35.240 align:start position:0%
shown on the right and here it applies a
 

00:13:35.240 --> 00:13:38.590 align:start position:0%
shown on the right and here it applies a
number<00:13:35.519><c> of</c><00:13:36.120><c> um</c><00:13:37.000><c> metamorphic</c><00:13:37.600><c> Transformations</c>

00:13:38.590 --> 00:13:38.600 align:start position:0%
number of um metamorphic Transformations
 

00:13:38.600 --> 00:13:40.470 align:start position:0%
number of um metamorphic Transformations
so<00:13:38.760><c> for</c><00:13:38.920><c> instance</c><00:13:39.160><c> it</c><00:13:39.279><c> seems</c><00:13:39.519><c> like</c><00:13:39.639><c> the</c><00:13:39.760><c> fuzer</c>

00:13:40.470 --> 00:13:40.480 align:start position:0%
so for instance it seems like the fuzer
 

00:13:40.480 --> 00:13:41.790 align:start position:0%
so for instance it seems like the fuzer
first

00:13:41.790 --> 00:13:41.800 align:start position:0%
first
 

00:13:41.800 --> 00:13:45.670 align:start position:0%
first
um<00:13:42.800><c> multiplied</c><00:13:43.639><c> the</c><00:13:43.800><c> expression</c><00:13:44.199><c> P</c><00:13:44.519><c> by</c><00:13:44.720><c> one</c>

00:13:45.670 --> 00:13:45.680 align:start position:0%
um multiplied the expression P by one
 

00:13:45.680 --> 00:13:48.509 align:start position:0%
um multiplied the expression P by one
then<00:13:45.959><c> subtracted</c><00:13:46.639><c> Zero</c><00:13:46.959><c> from</c><00:13:47.160><c> one</c><00:13:47.880><c> and</c><00:13:48.000><c> then</c>

00:13:48.509 --> 00:13:48.519 align:start position:0%
then subtracted Zero from one and then
 

00:13:48.519 --> 00:13:53.470 align:start position:0%
then subtracted Zero from one and then
divided<00:13:49.519><c> um</c><00:13:49.800><c> that</c><00:13:50.000><c> expression</c><00:13:51.000><c> uh</c><00:13:51.160><c> by</c><00:13:51.839><c> one</c><00:13:52.839><c> and</c>

00:13:53.470 --> 00:13:53.480 align:start position:0%
divided um that expression uh by one and
 

00:13:53.480 --> 00:13:58.310 align:start position:0%
divided um that expression uh by one and
when<00:13:54.040><c> we</c><00:13:54.639><c> execute</c><00:13:55.600><c> this</c><00:13:56.600><c> um</c><00:13:57.279><c> when</c><00:13:57.399><c> we</c><00:13:57.600><c> execute</c>

00:13:58.310 --> 00:13:58.320 align:start position:0%
when we execute this um when we execute
 

00:13:58.320 --> 00:13:59.910 align:start position:0%
when we execute this um when we execute
these<00:13:58.480><c> two</c><00:13:58.680><c> circuit</c>

00:13:59.910 --> 00:13:59.920 align:start position:0%
these two circuit
 

00:13:59.920 --> 00:14:02.590 align:start position:0%
these two circuit
we<00:14:00.240><c> can</c><00:14:00.440><c> see</c><00:14:00.720><c> that</c>

00:14:02.590 --> 00:14:02.600 align:start position:0%
we can see that
 

00:14:02.600 --> 00:14:06.389 align:start position:0%
we can see that
um<00:14:03.600><c> that</c><00:14:03.959><c> the</c><00:14:04.120><c> output</c><00:14:04.839><c> out</c><00:14:05.160><c> one</c><00:14:05.440><c> and</c><00:14:05.600><c> out</c><00:14:05.880><c> two</c>

00:14:06.389 --> 00:14:06.399 align:start position:0%
um that the output out one and out two
 

00:14:06.399 --> 00:14:08.829 align:start position:0%
um that the output out one and out two
actually<00:14:07.120><c> are</c><00:14:07.320><c> not</c><00:14:07.519><c> the</c>

00:14:08.829 --> 00:14:08.839 align:start position:0%
actually are not the
 

00:14:08.839 --> 00:14:11.790 align:start position:0%
actually are not the
same<00:14:09.839><c> so</c><00:14:10.000><c> this</c><00:14:10.120><c> is</c><00:14:10.279><c> bad</c><00:14:10.759><c> and</c><00:14:11.079><c> this</c><00:14:11.199><c> is</c><00:14:11.519><c> was</c><00:14:11.680><c> a</c>

00:14:11.790 --> 00:14:11.800 align:start position:0%
same so this is bad and this is was a
 

00:14:11.800 --> 00:14:14.310 align:start position:0%
same so this is bad and this is was a
bug<00:14:12.040><c> that</c><00:14:12.160><c> we</c><00:14:12.279><c> found</c><00:14:13.120><c> um</c><00:14:13.639><c> seemed</c><00:14:13.920><c> like</c><00:14:14.120><c> there</c>

00:14:14.310 --> 00:14:14.320 align:start position:0%
bug that we found um seemed like there
 

00:14:14.320 --> 00:14:17.910 align:start position:0%
bug that we found um seemed like there
was<00:14:14.440><c> a</c><00:14:14.519><c> bug</c><00:14:14.720><c> in</c><00:14:15.120><c> the</c><00:14:16.120><c> witness</c><00:14:16.519><c> generation</c>

00:14:17.910 --> 00:14:17.920 align:start position:0%
was a bug in the witness generation
 

00:14:17.920 --> 00:14:21.949 align:start position:0%
was a bug in the witness generation
part<00:14:18.920><c> um</c><00:14:19.880><c> and</c><00:14:20.440><c> here's</c><00:14:20.680><c> another</c><00:14:21.000><c> bug</c><00:14:21.720><c> um</c><00:14:21.839><c> that</c>

00:14:21.949 --> 00:14:21.959 align:start position:0%
part um and here's another bug um that
 

00:14:21.959 --> 00:14:25.310 align:start position:0%
part um and here's another bug um that
we<00:14:22.079><c> found</c><00:14:22.279><c> in</c><00:14:22.639><c> gnark</c><00:14:23.639><c> um</c><00:14:24.480><c> so</c><00:14:24.639><c> at</c><00:14:24.800><c> the</c><00:14:24.959><c> top</c><00:14:25.240><c> you</c>

00:14:25.310 --> 00:14:25.320 align:start position:0%
we found in gnark um so at the top you
 

00:14:25.320 --> 00:14:27.550 align:start position:0%
we found in gnark um so at the top you
can<00:14:25.600><c> again</c><00:14:25.839><c> see</c><00:14:26.199><c> the</c><00:14:26.519><c> the</c><00:14:26.639><c> original</c><00:14:27.040><c> circuit</c>

00:14:27.550 --> 00:14:27.560 align:start position:0%
can again see the the original circuit
 

00:14:27.560 --> 00:14:30.590 align:start position:0%
can again see the the original circuit
that<00:14:27.680><c> the</c><00:14:27.759><c> fuzer</c><00:14:28.120><c> generated</c><00:14:29.519><c> and</c><00:14:29.720><c> then</c><00:14:30.320><c> we</c><00:14:30.440><c> can</c>

00:14:30.590 --> 00:14:30.600 align:start position:0%
that the fuzer generated and then we can
 

00:14:30.600 --> 00:14:34.350 align:start position:0%
that the fuzer generated and then we can
also<00:14:30.839><c> see</c><00:14:31.519><c> the</c><00:14:32.079><c> transform</c><00:14:32.600><c> circuit</c><00:14:33.519><c> um</c><00:14:34.000><c> where</c>

00:14:34.350 --> 00:14:34.360 align:start position:0%
also see the transform circuit um where
 

00:14:34.360 --> 00:14:37.269 align:start position:0%
also see the transform circuit um where
the<00:14:34.480><c> fuzzer</c><00:14:35.160><c> essentially</c><00:14:35.680><c> changed</c><00:14:36.680><c> the</c>

00:14:37.269 --> 00:14:37.279 align:start position:0%
the fuzzer essentially changed the
 

00:14:37.279 --> 00:14:40.910 align:start position:0%
the fuzzer essentially changed the
expression<00:14:37.759><c> zero</c><00:14:38.320><c> to</c><00:14:38.720><c> just</c><00:14:39.480><c> zero</c><00:14:40.000><c> or</c><00:14:40.360><c> zero</c>

00:14:40.910 --> 00:14:40.920 align:start position:0%
expression zero to just zero or zero
 

00:14:40.920 --> 00:14:44.430 align:start position:0%
expression zero to just zero or zero
which<00:14:41.079><c> should</c><00:14:41.279><c> be</c><00:14:41.959><c> um</c><00:14:42.160><c> equivalent</c><00:14:43.199><c> right</c><00:14:44.199><c> and</c>

00:14:44.430 --> 00:14:44.440 align:start position:0%
which should be um equivalent right and
 

00:14:44.440 --> 00:14:48.030 align:start position:0%
which should be um equivalent right and
here<00:14:45.320><c> um</c><00:14:45.600><c> we</c><00:14:45.720><c> observed</c><00:14:46.199><c> that</c><00:14:46.560><c> for</c><00:14:46.880><c> C1</c><00:14:47.800><c> uh</c><00:14:47.920><c> there</c>

00:14:48.030 --> 00:14:48.040 align:start position:0%
here um we observed that for C1 uh there
 

00:14:48.040 --> 00:14:50.189 align:start position:0%
here um we observed that for C1 uh there
was<00:14:48.160><c> no</c><00:14:48.360><c> witness</c><00:14:48.920><c> that</c><00:14:49.040><c> was</c><00:14:49.199><c> generated</c><00:14:50.040><c> uh</c>

00:14:50.189 --> 00:14:50.199 align:start position:0%
was no witness that was generated uh
 

00:14:50.199 --> 00:14:53.430 align:start position:0%
was no witness that was generated uh
whereas<00:14:50.440><c> for</c><00:14:50.560><c> C2</c><00:14:51.040><c> there</c><00:14:51.199><c> was</c><00:14:51.920><c> so</c><00:14:52.240><c> this</c><00:14:52.639><c> again</c>

00:14:53.430 --> 00:14:53.440 align:start position:0%
whereas for C2 there was so this again
 

00:14:53.440 --> 00:14:56.550 align:start position:0%
whereas for C2 there was so this again
is<00:14:54.120><c> um</c><00:14:54.399><c> a</c><00:14:54.600><c> bar</c><00:14:55.199><c> somewhere</c><00:14:55.720><c> in</c><00:14:55.920><c> this</c><00:14:56.360><c> uh</c>

00:14:56.550 --> 00:14:56.560 align:start position:0%
is um a bar somewhere in this uh
 

00:14:56.560 --> 00:14:59.949 align:start position:0%
is um a bar somewhere in this uh
pipeline

00:14:59.949 --> 00:14:59.959 align:start position:0%
 
 

00:14:59.959 --> 00:15:03.069 align:start position:0%
 
and<00:15:00.480><c> yeah</c><00:15:00.800><c> now</c><00:15:01.000><c> that</c><00:15:01.160><c> You'</c><00:15:01.639><c> kind</c><00:15:01.800><c> of</c><00:15:02.519><c> hopefully</c>

00:15:03.069 --> 00:15:03.079 align:start position:0%
and yeah now that You' kind of hopefully
 

00:15:03.079 --> 00:15:04.910 align:start position:0%
and yeah now that You' kind of hopefully
got<00:15:03.279><c> an</c><00:15:03.440><c> overview</c><00:15:03.839><c> of</c><00:15:04.000><c> the</c><00:15:04.320><c> of</c><00:15:04.399><c> the</c><00:15:04.519><c> tool</c><00:15:04.800><c> and</c>

00:15:04.910 --> 00:15:04.920 align:start position:0%
got an overview of the of the tool and
 

00:15:04.920 --> 00:15:07.310 align:start position:0%
got an overview of the of the tool and
saw<00:15:05.160><c> a</c><00:15:05.320><c> bit</c><00:15:05.959><c> how</c><00:15:06.120><c> these</c><00:15:06.279><c> bugs</c><00:15:06.560><c> look</c><00:15:06.759><c> like</c><00:15:06.920><c> in</c>

00:15:07.310 --> 00:15:07.320 align:start position:0%
saw a bit how these bugs look like in
 

00:15:07.320 --> 00:15:10.470 align:start position:0%
saw a bit how these bugs look like in
practice<00:15:08.320><c> um</c><00:15:08.480><c> I</c><00:15:08.600><c> hope</c><00:15:09.040><c> more</c><00:15:09.360><c> people</c><00:15:09.720><c> will</c><00:15:10.360><c> you</c>

00:15:10.470 --> 00:15:10.480 align:start position:0%
practice um I hope more people will you
 

00:15:10.480 --> 00:15:12.910 align:start position:0%
practice um I hope more people will you
know<00:15:11.240><c> uh</c><00:15:11.720><c> uh</c><00:15:11.800><c> start</c><00:15:12.079><c> looking</c><00:15:12.399><c> into</c><00:15:12.680><c> this</c>

00:15:12.910 --> 00:15:12.920 align:start position:0%
know uh uh start looking into this
 

00:15:12.920 --> 00:15:14.870 align:start position:0%
know uh uh start looking into this
problem<00:15:13.560><c> uh</c><00:15:13.680><c> because</c><00:15:13.880><c> I</c><00:15:14.000><c> think</c><00:15:14.160><c> it's</c><00:15:14.440><c> a</c><00:15:14.680><c> it's</c><00:15:14.759><c> a</c>

00:15:14.870 --> 00:15:14.880 align:start position:0%
problem uh because I think it's a it's a
 

00:15:14.880 --> 00:15:17.030 align:start position:0%
problem uh because I think it's a it's a
very<00:15:15.320><c> important</c><00:15:15.759><c> problem</c><00:15:16.600><c> uh</c><00:15:16.680><c> we</c><00:15:16.800><c> need</c><00:15:16.920><c> to</c>

00:15:17.030 --> 00:15:17.040 align:start position:0%
very important problem uh we need to
 

00:15:17.040 --> 00:15:18.509 align:start position:0%
very important problem uh we need to
really<00:15:17.199><c> make</c><00:15:17.360><c> sure</c><00:15:17.560><c> that</c><00:15:17.759><c> these</c><00:15:17.959><c> components</c>

00:15:18.509 --> 00:15:18.519 align:start position:0%
really make sure that these components
 

00:15:18.519 --> 00:15:21.150 align:start position:0%
really make sure that these components
are<00:15:19.120><c> uh</c><00:15:19.240><c> bulletproof</c><00:15:20.240><c> uh</c><00:15:20.360><c> because</c><00:15:20.600><c> otherwise</c>

00:15:21.150 --> 00:15:21.160 align:start position:0%
are uh bulletproof uh because otherwise
 

00:15:21.160 --> 00:15:23.310 align:start position:0%
are uh bulletproof uh because otherwise
you<00:15:21.279><c> know</c><00:15:21.880><c> pretty</c><00:15:22.120><c> bad</c><00:15:22.320><c> things</c><00:15:22.519><c> can</c><00:15:22.720><c> happen</c>

00:15:23.310 --> 00:15:23.320 align:start position:0%
you know pretty bad things can happen
 

00:15:23.320 --> 00:15:25.870 align:start position:0%
you know pretty bad things can happen
and<00:15:23.600><c> it's</c><00:15:23.720><c> better</c><00:15:23.959><c> to</c><00:15:24.120><c> do</c><00:15:24.680><c> this</c><00:15:25.120><c> before</c><00:15:25.560><c> the</c>

00:15:25.870 --> 00:15:25.880 align:start position:0%
and it's better to do this before the
 

00:15:25.880 --> 00:15:30.030 align:start position:0%
and it's better to do this before the
some<00:15:26.320><c> you</c><00:15:26.440><c> know</c><00:15:27.120><c> attacker</c><00:15:27.560><c> does</c><00:15:27.720><c> it</c><00:15:28.000><c> right</c><00:15:29.240><c> um</c>

00:15:30.030 --> 00:15:30.040 align:start position:0%
some you know attacker does it right um
 

00:15:30.040 --> 00:15:32.269 align:start position:0%
some you know attacker does it right um
and<00:15:30.440><c> you</c><00:15:30.560><c> don't</c><00:15:30.720><c> need</c><00:15:30.839><c> to</c><00:15:30.959><c> be</c><00:15:31.120><c> a</c><00:15:31.319><c> cryptographer</c>

00:15:32.269 --> 00:15:32.279 align:start position:0%
and you don't need to be a cryptographer
 

00:15:32.279 --> 00:15:34.990 align:start position:0%
and you don't need to be a cryptographer
to<00:15:32.560><c> actually</c><00:15:32.920><c> find</c><00:15:33.240><c> these</c><00:15:33.440><c> bugs</c><00:15:33.959><c> so</c><00:15:34.639><c> you</c><00:15:34.759><c> know</c>

00:15:34.990 --> 00:15:35.000 align:start position:0%
to actually find these bugs so you know
 

00:15:35.000 --> 00:15:39.189 align:start position:0%
to actually find these bugs so you know
that<00:15:35.560><c> makes</c><00:15:36.480><c> um</c><00:15:36.839><c> gives</c><00:15:37.120><c> us</c><00:15:37.399><c> a</c><00:15:37.560><c> lot</c><00:15:37.959><c> more</c><00:15:38.959><c> um</c>

00:15:39.189 --> 00:15:39.199 align:start position:0%
that makes um gives us a lot more um
 

00:15:39.199 --> 00:15:41.790 align:start position:0%
that makes um gives us a lot more um
people<00:15:39.519><c> that</c><00:15:39.680><c> can</c><00:15:40.000><c> actually</c><00:15:41.000><c> uh</c><00:15:41.120><c> look</c><00:15:41.319><c> into</c>

00:15:41.790 --> 00:15:41.800 align:start position:0%
people that can actually uh look into
 

00:15:41.800 --> 00:15:44.670 align:start position:0%
people that can actually uh look into
this<00:15:42.800><c> um</c><00:15:43.240><c> because</c><00:15:43.440><c> I</c><00:15:43.560><c> think</c><00:15:43.839><c> so</c><00:15:44.040><c> far</c><00:15:44.240><c> we</c><00:15:44.440><c> only</c>

00:15:44.670 --> 00:15:44.680 align:start position:0%
this um because I think so far we only
 

00:15:44.680 --> 00:15:46.389 align:start position:0%
this um because I think so far we only
really<00:15:45.000><c> scratch</c><00:15:45.360><c> the</c><00:15:45.480><c> surface</c><00:15:45.920><c> so</c><00:15:46.120><c> there's</c>

00:15:46.389 --> 00:15:46.399 align:start position:0%
really scratch the surface so there's
 

00:15:46.399 --> 00:15:48.509 align:start position:0%
really scratch the surface so there's
more<00:15:46.639><c> more</c><00:15:46.880><c> things</c><00:15:47.279><c> that</c><00:15:47.399><c> need</c><00:15:47.519><c> to</c><00:15:47.639><c> be</c><00:15:47.800><c> done</c><00:15:48.279><c> to</c>

00:15:48.509 --> 00:15:48.519 align:start position:0%
more more things that need to be done to
 

00:15:48.519 --> 00:15:50.590 align:start position:0%
more more things that need to be done to
to<00:15:48.680><c> test</c><00:15:48.920><c> these</c><00:15:49.120><c> components</c><00:15:49.759><c> also</c><00:15:50.000><c> there's</c>

00:15:50.590 --> 00:15:50.600 align:start position:0%
to test these components also there's
 

00:15:50.600 --> 00:15:54.189 align:start position:0%
to test these components also there's
components<00:15:51.600><c> like</c><00:15:51.839><c> this</c><00:15:52.040><c> popping</c><00:15:52.360><c> up</c><00:15:52.959><c> um</c><00:15:53.959><c> uh</c>

00:15:54.189 --> 00:15:54.199 align:start position:0%
components like this popping up um uh
 

00:15:54.199 --> 00:15:57.189 align:start position:0%
components like this popping up um uh
every<00:15:54.399><c> now</c><00:15:54.560><c> and</c><00:15:54.720><c> then</c><00:15:55.199><c> so</c><00:15:55.600><c> we</c><00:15:55.839><c> really</c><00:15:56.079><c> need</c><00:15:56.279><c> to</c>

00:15:57.189 --> 00:15:57.199 align:start position:0%
every now and then so we really need to
 

00:15:57.199 --> 00:15:59.710 align:start position:0%
every now and then so we really need to
uh<00:15:57.319><c> make</c><00:15:57.480><c> sure</c><00:15:57.800><c> they're</c><00:15:58.360><c> safe</c><00:15:59.279><c> and</c><00:15:59.399><c> we</c><00:15:59.519><c> also</c>

00:15:59.710 --> 00:15:59.720 align:start position:0%
uh make sure they're safe and we also
 

00:15:59.720 --> 00:16:01.710 align:start position:0%
uh make sure they're safe and we also
should<00:15:59.959><c> do</c><00:16:00.480><c> um</c><00:16:00.680><c> continuous</c><00:16:01.079><c> fuzzing</c><00:16:01.440><c> of</c><00:16:01.560><c> all</c>

00:16:01.710 --> 00:16:01.720 align:start position:0%
should do um continuous fuzzing of all
 

00:16:01.720 --> 00:16:04.030 align:start position:0%
should do um continuous fuzzing of all
these<00:16:01.920><c> components</c><00:16:02.639><c> so</c><00:16:03.000><c> for</c><00:16:03.240><c> the</c><00:16:03.480><c> gnark</c><00:16:03.839><c> team</c>

00:16:04.030 --> 00:16:04.040 align:start position:0%
these components so for the gnark team
 

00:16:04.040 --> 00:16:05.910 align:start position:0%
these components so for the gnark team
we<00:16:04.199><c> actually</c><00:16:04.440><c> implemented</c><00:16:05.319><c> a</c><00:16:05.480><c> continuous</c>

00:16:05.910 --> 00:16:05.920 align:start position:0%
we actually implemented a continuous
 

00:16:05.920 --> 00:16:08.509 align:start position:0%
we actually implemented a continuous
fuzzing<00:16:06.560><c> setup</c><00:16:07.199><c> where</c><00:16:07.680><c> you</c><00:16:07.759><c> know</c><00:16:08.120><c> they</c><00:16:08.319><c> when</c>

00:16:08.509 --> 00:16:08.519 align:start position:0%
fuzzing setup where you know they when
 

00:16:08.519 --> 00:16:10.550 align:start position:0%
fuzzing setup where you know they when
they<00:16:08.680><c> whenever</c><00:16:09.040><c> they</c><00:16:09.240><c> commit</c><00:16:10.079><c> the</c><00:16:10.240><c> latest</c>

00:16:10.550 --> 00:16:10.560 align:start position:0%
they whenever they commit the latest
 

00:16:10.560 --> 00:16:13.509 align:start position:0%
they whenever they commit the latest
version<00:16:10.920><c> to</c><00:16:11.319><c> master</c><00:16:12.319><c> uh</c><00:16:12.519><c> we</c><00:16:12.959><c> we</c><00:16:13.079><c> start</c><00:16:13.319><c> a</c><00:16:13.399><c> new</c>

00:16:13.509 --> 00:16:13.519 align:start position:0%
version to master uh we we start a new
 

00:16:13.519 --> 00:16:15.990 align:start position:0%
version to master uh we we start a new
fuzzing<00:16:13.920><c> campaign</c><00:16:14.639><c> uh</c><00:16:14.759><c> we</c><00:16:14.880><c> run</c><00:16:15.079><c> for</c><00:16:15.199><c> 24</c><00:16:15.560><c> hours</c>

00:16:15.990 --> 00:16:16.000 align:start position:0%
fuzzing campaign uh we run for 24 hours
 

00:16:16.000 --> 00:16:18.350 align:start position:0%
fuzzing campaign uh we run for 24 hours
we<00:16:16.199><c> tell</c><00:16:16.480><c> them</c><00:16:16.839><c> if</c><00:16:17.079><c> something</c><00:16:17.360><c> is</c><00:16:17.519><c> wrong</c><00:16:18.240><c> and</c>

00:16:18.350 --> 00:16:18.360 align:start position:0%
we tell them if something is wrong and
 

00:16:18.360 --> 00:16:21.470 align:start position:0%
we tell them if something is wrong and
then<00:16:18.560><c> the</c><00:16:18.720><c> next</c><00:16:18.959><c> day</c><00:16:19.360><c> same</c><00:16:19.600><c> thing</c><00:16:20.199><c> happens</c><00:16:21.199><c> um</c>

00:16:21.470 --> 00:16:21.480 align:start position:0%
then the next day same thing happens um
 

00:16:21.480 --> 00:16:23.350 align:start position:0%
then the next day same thing happens um
we're<00:16:21.680><c> also</c><00:16:22.160><c> planning</c><00:16:22.480><c> to</c><00:16:22.600><c> do</c><00:16:22.800><c> the</c><00:16:22.959><c> same</c><00:16:23.120><c> for</c>

00:16:23.350 --> 00:16:23.360 align:start position:0%
we're also planning to do the same for
 

00:16:23.360 --> 00:16:26.350 align:start position:0%
we're also planning to do the same for
cors<00:16:24.079><c> and</c><00:16:24.319><c> if</c><00:16:24.399><c> you're</c><00:16:24.680><c> interested</c><00:16:25.079><c> in</c><00:16:25.720><c> um</c><00:16:26.120><c> you</c>

00:16:26.350 --> 00:16:26.360 align:start position:0%
cors and if you're interested in um you
 

00:16:26.360 --> 00:16:29.710 align:start position:0%
cors and if you're interested in um you
know<00:16:27.360><c> us</c><00:16:27.880><c> uh</c><00:16:28.040><c> taking</c><00:16:28.279><c> a</c><00:16:28.360><c> look</c><00:16:28.519><c> at</c><00:16:28.639><c> your</c><00:16:29.199><c> uh</c><00:16:29.319><c> ZK</c>

00:16:29.710 --> 00:16:29.720 align:start position:0%
know us uh taking a look at your uh ZK
 

00:16:29.720 --> 00:16:31.710 align:start position:0%
know us uh taking a look at your uh ZK
infrastructure<00:16:30.600><c> uh</c><00:16:30.720><c> please</c><00:16:30.920><c> reach</c>

00:16:31.710 --> 00:16:31.720 align:start position:0%
infrastructure uh please reach
 

00:16:31.720 --> 00:16:35.230 align:start position:0%
infrastructure uh please reach
out<00:16:32.720><c> and</c><00:16:33.000><c> if</c><00:16:33.120><c> you</c><00:16:33.440><c> want</c><00:16:33.560><c> to</c><00:16:33.800><c> know</c><00:16:34.040><c> more</c><00:16:34.319><c> about</c>

00:16:35.230 --> 00:16:35.240 align:start position:0%
out and if you want to know more about
 

00:16:35.240 --> 00:16:37.309 align:start position:0%
out and if you want to know more about
uh<00:16:35.600><c> what's</c><00:16:35.839><c> going</c><00:16:36.000><c> on</c><00:16:36.199><c> in</c><00:16:36.319><c> the</c><00:16:36.440><c> fuzzer</c><00:16:37.079><c> then</c>

00:16:37.309 --> 00:16:37.319 align:start position:0%
uh what's going on in the fuzzer then
 

00:16:37.319 --> 00:16:40.069 align:start position:0%
uh what's going on in the fuzzer then
please<00:16:37.560><c> just</c><00:16:37.880><c> check</c><00:16:38.079><c> out</c><00:16:38.440><c> our</c><00:16:38.920><c> paper</c><00:16:39.920><c> uh</c><00:16:40.000><c> you</c>

00:16:40.069 --> 00:16:40.079 align:start position:0%
please just check out our paper uh you
 

00:16:40.079 --> 00:16:43.990 align:start position:0%
please just check out our paper uh you
can<00:16:40.199><c> scan</c><00:16:40.480><c> the</c><00:16:40.639><c> QR</c><00:16:41.000><c> code</c><00:16:41.399><c> there</c><00:16:42.160><c> um</c><00:16:42.920><c> and</c><00:16:43.399><c> if</c><00:16:43.560><c> you</c>

00:16:43.990 --> 00:16:44.000 align:start position:0%
can scan the QR code there um and if you
 

00:16:44.000 --> 00:16:45.990 align:start position:0%
can scan the QR code there um and if you
you<00:16:44.120><c> know</c><00:16:44.360><c> want</c><00:16:44.519><c> to</c><00:16:44.720><c> let</c><00:16:44.920><c> take</c><00:16:45.040><c> a</c>

00:16:45.990 --> 00:16:46.000 align:start position:0%
you know want to let take a
 

00:16:46.000 --> 00:16:51.189 align:start position:0%
you know want to let take a
look<00:16:47.000><c> um</c>

00:16:51.189 --> 00:16:51.199 align:start position:0%
 
 

00:16:51.199 --> 00:16:55.230 align:start position:0%
 
yeah<00:16:52.680><c> fantastic</c><00:16:53.680><c> thank</c><00:16:53.839><c> you</c><00:16:54.040><c> Val</c><00:16:54.519><c> Valentine</c>

00:16:55.230 --> 00:16:55.240 align:start position:0%
yeah fantastic thank you Val Valentine
 

00:16:55.240 --> 00:16:58.550 align:start position:0%
yeah fantastic thank you Val Valentine
for<00:16:55.759><c> this</c><00:16:56.560><c> presentation</c><00:16:57.560><c> um</c><00:16:58.079><c> let's</c><00:16:58.319><c> get</c><00:16:58.440><c> to</c>

00:16:58.550 --> 00:16:58.560 align:start position:0%
for this presentation um let's get to
 

00:16:58.560 --> 00:17:01.269 align:start position:0%
for this presentation um let's get to
the<00:16:58.639><c> question</c><00:16:59.199><c> shall</c><00:16:59.440><c> we</c><00:16:59.800><c> yeah</c><00:17:00.040><c> all</c><00:17:00.199><c> right</c><00:17:00.680><c> so</c>

00:17:01.269 --> 00:17:01.279 align:start position:0%
the question shall we yeah all right so
 

00:17:01.279 --> 00:17:02.990 align:start position:0%
the question shall we yeah all right so
I've<00:17:01.440><c> sorted</c><00:17:01.839><c> the</c><00:17:02.000><c> questions</c><00:17:02.519><c> again</c><00:17:02.759><c> you</c><00:17:02.880><c> have</c>

00:17:02.990 --> 00:17:03.000 align:start position:0%
I've sorted the questions again you have
 

00:17:03.000 --> 00:17:04.710 align:start position:0%
I've sorted the questions again you have
a<00:17:03.160><c> QR</c><00:17:03.480><c> code</c><00:17:03.800><c> here</c><00:17:04.000><c> you</c><00:17:04.120><c> can</c><00:17:04.319><c> ask</c><00:17:04.480><c> your</c>

00:17:04.710 --> 00:17:04.720 align:start position:0%
a QR code here you can ask your
 

00:17:04.720 --> 00:17:06.309 align:start position:0%
a QR code here you can ask your
questions<00:17:05.160><c> and</c><00:17:05.280><c> I'll</c><00:17:05.480><c> ask</c><00:17:05.720><c> the</c><00:17:05.799><c> ones</c><00:17:06.039><c> that</c><00:17:06.120><c> are</c>

00:17:06.309 --> 00:17:06.319 align:start position:0%
questions and I'll ask the ones that are
 

00:17:06.319 --> 00:17:09.429 align:start position:0%
questions and I'll ask the ones that are
the<00:17:06.439><c> most</c><00:17:07.280><c> voted</c><00:17:08.280><c> so</c><00:17:08.559><c> let's</c><00:17:08.760><c> get</c><00:17:08.880><c> to</c><00:17:09.039><c> the</c><00:17:09.199><c> first</c>

00:17:09.429 --> 00:17:09.439 align:start position:0%
the most voted so let's get to the first
 

00:17:09.439 --> 00:17:12.590 align:start position:0%
the most voted so let's get to the first
one<00:17:10.360><c> when</c><00:17:10.480><c> you</c><00:17:10.679><c> identify</c><00:17:11.480><c> a</c><00:17:11.679><c> bug</c><00:17:12.240><c> can</c><00:17:12.360><c> you</c><00:17:12.439><c> just</c>

00:17:12.590 --> 00:17:12.600 align:start position:0%
one when you identify a bug can you just
 

00:17:12.600 --> 00:17:14.710 align:start position:0%
one when you identify a bug can you just
say<00:17:12.880><c> hey</c><00:17:13.039><c> there's</c><00:17:13.240><c> a</c><00:17:13.360><c> bug</c><00:17:13.640><c> or</c><00:17:13.760><c> do</c><00:17:13.880><c> you</c><00:17:14.079><c> provide</c>

00:17:14.710 --> 00:17:14.720 align:start position:0%
say hey there's a bug or do you provide
 

00:17:14.720 --> 00:17:16.669 align:start position:0%
say hey there's a bug or do you provide
a<00:17:14.919><c> path</c><00:17:15.160><c> to</c><00:17:15.319><c> fix</c><00:17:15.520><c> it</c><00:17:15.679><c> like</c><00:17:15.799><c> do</c><00:17:15.919><c> you</c><00:17:16.079><c> identify</c>

00:17:16.669 --> 00:17:16.679 align:start position:0%
a path to fix it like do you identify
 

00:17:16.679 --> 00:17:19.590 align:start position:0%
a path to fix it like do you identify
where<00:17:17.199><c> the</c><00:17:17.360><c> bug</c><00:17:17.679><c> exist</c><00:17:18.039><c> within</c><00:17:18.280><c> the</c><00:17:18.600><c> circuit</c>

00:17:19.590 --> 00:17:19.600 align:start position:0%
where the bug exist within the circuit
 

00:17:19.600 --> 00:17:22.350 align:start position:0%
where the bug exist within the circuit
uh<00:17:19.760><c> we</c><00:17:19.880><c> don't</c><00:17:20.880><c> directly</c><00:17:21.360><c> identify</c><00:17:21.880><c> where</c><00:17:22.240><c> the</c>

00:17:22.350 --> 00:17:22.360 align:start position:0%
uh we don't directly identify where the
 

00:17:22.360 --> 00:17:27.110 align:start position:0%
uh we don't directly identify where the
bug<00:17:22.640><c> is</c><00:17:23.240><c> but</c><00:17:23.679><c> when</c><00:17:23.919><c> we</c><00:17:24.400><c> generate</c><00:17:25.679><c> the</c><00:17:26.679><c> the</c><00:17:26.839><c> test</c>

00:17:27.110 --> 00:17:27.120 align:start position:0%
bug is but when we generate the the test
 

00:17:27.120 --> 00:17:29.510 align:start position:0%
bug is but when we generate the the test
inputs<00:17:27.640><c> like</c><00:17:27.839><c> the</c><00:17:27.919><c> circuits</c><00:17:29.000><c> uh</c><00:17:29.120><c> we</c><00:17:29.240><c> try</c><00:17:29.440><c> to</c>

00:17:29.510 --> 00:17:29.520 align:start position:0%
inputs like the circuits uh we try to
 

00:17:29.520 --> 00:17:31.270 align:start position:0%
inputs like the circuits uh we try to
minimize<00:17:30.000><c> them</c><00:17:30.280><c> so</c><00:17:30.440><c> we</c><00:17:30.559><c> try</c><00:17:30.760><c> to</c><00:17:30.840><c> keep</c><00:17:31.000><c> them</c><00:17:31.160><c> as</c>

00:17:31.270 --> 00:17:31.280 align:start position:0%
minimize them so we try to keep them as
 

00:17:31.280 --> 00:17:34.110 align:start position:0%
minimize them so we try to keep them as
small<00:17:31.600><c> as</c><00:17:31.799><c> possible</c><00:17:32.679><c> so</c><00:17:33.000><c> the</c><00:17:33.200><c> developers</c><00:17:33.679><c> can</c>

00:17:34.110 --> 00:17:34.120 align:start position:0%
small as possible so the developers can
 

00:17:34.120 --> 00:17:36.590 align:start position:0%
small as possible so the developers can
really<00:17:35.039><c> hopefully</c><00:17:35.440><c> quite</c><00:17:35.640><c> easily</c><00:17:35.960><c> identify</c>

00:17:36.590 --> 00:17:36.600 align:start position:0%
really hopefully quite easily identify
 

00:17:36.600 --> 00:17:41.310 align:start position:0%
really hopefully quite easily identify
where<00:17:36.919><c> things</c><00:17:37.120><c> go</c><00:17:37.520><c> wrong</c><00:17:38.520><c> um</c><00:17:39.400><c> and</c><00:17:40.240><c> yeah</c><00:17:40.480><c> so</c><00:17:40.679><c> far</c>

00:17:41.310 --> 00:17:41.320 align:start position:0%
where things go wrong um and yeah so far
 

00:17:41.320 --> 00:17:44.470 align:start position:0%
where things go wrong um and yeah so far
I<00:17:41.440><c> think</c><00:17:41.760><c> the</c><00:17:41.880><c> complaint</c><00:17:42.679><c> the</c><00:17:43.400><c> the</c><00:17:44.360><c> the</c>

00:17:44.470 --> 00:17:44.480 align:start position:0%
I think the complaint the the the
 

00:17:44.480 --> 00:17:46.669 align:start position:0%
I think the complaint the the the
developers<00:17:45.039><c> very</c><00:17:45.400><c> very</c><00:17:45.600><c> happy</c><00:17:45.840><c> with</c><00:17:45.960><c> the</c><00:17:46.080><c> bugs</c>

00:17:46.669 --> 00:17:46.679 align:start position:0%
developers very very happy with the bugs
 

00:17:46.679 --> 00:17:50.150 align:start position:0%
developers very very happy with the bugs
reported<00:17:47.679><c> um</c><00:17:48.440><c> and</c><00:17:48.880><c> I</c><00:17:49.000><c> think</c><00:17:49.720><c> there</c><00:17:49.840><c> was</c><00:17:50.000><c> no</c>

00:17:50.150 --> 00:17:50.160 align:start position:0%
reported um and I think there was no
 

00:17:50.160 --> 00:17:53.029 align:start position:0%
reported um and I think there was no
issues<00:17:50.760><c> finding</c><00:17:51.240><c> the</c><00:17:51.480><c> the</c><00:17:51.600><c> bug</c><00:17:52.039><c> once</c><00:17:52.520><c> they</c><00:17:52.679><c> had</c>

00:17:53.029 --> 00:17:53.039 align:start position:0%
issues finding the the bug once they had
 

00:17:53.039 --> 00:17:56.350 align:start position:0%
issues finding the the bug once they had
the<00:17:53.720><c> the</c><00:17:53.880><c> input</c><00:17:54.640><c> makes</c><00:17:54.880><c> sense</c><00:17:55.240><c> thank</c><00:17:55.400><c> you</c>

00:17:56.350 --> 00:17:56.360 align:start position:0%
the the input makes sense thank you
 

00:17:56.360 --> 00:17:58.870 align:start position:0%
the the input makes sense thank you
second<00:17:56.799><c> question</c><00:17:57.440><c> do</c><00:17:57.600><c> you</c><00:17:57.799><c> fuzz</c><00:17:58.240><c> logical</c>

00:17:58.870 --> 00:17:58.880 align:start position:0%
second question do you fuzz logical
 

00:17:58.880 --> 00:18:01.190 align:start position:0%
second question do you fuzz logical
Expressions<00:17:59.760><c> they're</c><00:18:00.000><c> encoding</c><00:18:00.440><c> in</c>

00:18:01.190 --> 00:18:01.200 align:start position:0%
Expressions they're encoding in
 

00:18:01.200 --> 00:18:04.070 align:start position:0%
Expressions they're encoding in
circuits<00:18:02.200><c> uh</c><00:18:02.400><c> yeah</c><00:18:02.559><c> we</c><00:18:02.679><c> do</c><00:18:03.200><c> I</c><00:18:03.320><c> think</c><00:18:03.799><c> yeah</c><00:18:03.919><c> so</c>

00:18:04.070 --> 00:18:04.080 align:start position:0%
circuits uh yeah we do I think yeah so
 

00:18:04.080 --> 00:18:06.149 align:start position:0%
circuits uh yeah we do I think yeah so
for<00:18:04.159><c> instance</c><00:18:04.400><c> we</c><00:18:04.559><c> apply</c><00:18:04.960><c> some</c><00:18:05.360><c> you</c><00:18:05.480><c> know</c><00:18:05.679><c> some</c>

00:18:06.149 --> 00:18:06.159 align:start position:0%
for instance we apply some you know some
 

00:18:06.159 --> 00:18:08.549 align:start position:0%
for instance we apply some you know some
common<00:18:07.120><c> uh</c><00:18:07.240><c> Transformations</c><00:18:08.000><c> like</c><00:18:08.159><c> applying</c>

00:18:08.549 --> 00:18:08.559 align:start position:0%
common uh Transformations like applying
 

00:18:08.559 --> 00:18:10.870 align:start position:0%
common uh Transformations like applying
the<00:18:08.679><c> Morgan's</c><00:18:09.120><c> Rule</c><00:18:09.480><c> and</c><00:18:09.600><c> so</c><00:18:09.760><c> on</c><00:18:10.440><c> um</c><00:18:10.720><c> so</c>

00:18:10.870 --> 00:18:10.880 align:start position:0%
the Morgan's Rule and so on um so
 

00:18:10.880 --> 00:18:13.029 align:start position:0%
the Morgan's Rule and so on um so
there's<00:18:11.039><c> a</c><00:18:11.159><c> bunch</c><00:18:11.360><c> of</c><00:18:12.280><c> um</c><00:18:12.840><c> these</c>

00:18:13.029 --> 00:18:13.039 align:start position:0%
there's a bunch of um these
 

00:18:13.039 --> 00:18:14.909 align:start position:0%
there's a bunch of um these
Transformations<00:18:13.720><c> that</c><00:18:13.919><c> we</c><00:18:14.280><c> that</c><00:18:14.400><c> we</c><00:18:14.520><c> use</c><00:18:14.799><c> in</c>

00:18:14.909 --> 00:18:14.919 align:start position:0%
Transformations that we that we use in
 

00:18:14.919 --> 00:18:16.909 align:start position:0%
Transformations that we that we use in
the<00:18:15.400><c> fuzer</c>

00:18:16.909 --> 00:18:16.919 align:start position:0%
the fuzer
 

00:18:16.919 --> 00:18:18.430 align:start position:0%
the fuzer
wonderful

00:18:18.430 --> 00:18:18.440 align:start position:0%
wonderful
 

00:18:18.440 --> 00:18:20.990 align:start position:0%
wonderful
third<00:18:19.440><c> where</c><00:18:19.600><c> is</c><00:18:19.760><c> the</c><00:18:19.880><c> bug</c><00:18:20.159><c> Nest</c><00:18:20.600><c> where</c><00:18:20.720><c> do</c>

00:18:20.990 --> 00:18:21.000 align:start position:0%
third where is the bug Nest where do
 

00:18:21.000 --> 00:18:23.350 align:start position:0%
third where is the bug Nest where do
bugs<00:18:21.360><c> usually</c><00:18:21.799><c> reside</c><00:18:22.200><c> in</c><00:18:22.320><c> your</c><00:18:22.840><c> historical</c>

00:18:23.350 --> 00:18:23.360 align:start position:0%
bugs usually reside in your historical
 

00:18:23.360 --> 00:18:26.830 align:start position:0%
bugs usually reside in your historical
fuzing<00:18:23.799><c> like</c><00:18:23.960><c> from</c><00:18:24.120><c> what</c><00:18:24.240><c> you've</c><00:18:24.480><c> seen</c><00:18:25.760><c> um</c><00:18:26.760><c> I</c>

00:18:26.830 --> 00:18:26.840 align:start position:0%
fuzing like from what you've seen um I
 

00:18:26.840 --> 00:18:28.590 align:start position:0%
fuzing like from what you've seen um I
think<00:18:27.000><c> it's</c><00:18:27.200><c> it's</c><00:18:27.360><c> hard</c><00:18:27.559><c> to</c><00:18:28.000><c> like</c><00:18:28.400><c> can</c><00:18:28.480><c> you</c>

00:18:28.590 --> 00:18:28.600 align:start position:0%
think it's it's hard to like can you
 

00:18:28.600 --> 00:18:31.350 align:start position:0%
think it's it's hard to like can you
read<00:18:28.919><c> derive</c><00:18:29.600><c> U</c><00:18:30.000><c> enough</c><00:18:30.400><c> data</c><00:18:30.679><c> from</c><00:18:30.919><c> you</c><00:18:31.080><c> found</c>

00:18:31.350 --> 00:18:31.360 align:start position:0%
read derive U enough data from you found
 

00:18:31.360 --> 00:18:33.710 align:start position:0%
read derive U enough data from you found
17<00:18:32.159><c> yeah</c><00:18:32.440><c> yeah</c><00:18:32.679><c> I</c><00:18:32.760><c> think</c><00:18:32.960><c> it's</c><00:18:33.240><c> yeah</c><00:18:33.480><c> it's</c>

00:18:33.710 --> 00:18:33.720 align:start position:0%
17 yeah yeah I think it's yeah it's
 

00:18:33.720 --> 00:18:35.830 align:start position:0%
17 yeah yeah I think it's yeah it's
probably<00:18:34.039><c> too</c><00:18:34.240><c> early</c><00:18:34.520><c> to</c><00:18:34.640><c> say</c><00:18:34.919><c> but</c><00:18:35.120><c> we</c><00:18:35.360><c> did</c>

00:18:35.830 --> 00:18:35.840 align:start position:0%
probably too early to say but we did
 

00:18:35.840 --> 00:18:39.390 align:start position:0%
probably too early to say but we did
observe<00:18:36.360><c> that</c><00:18:37.360><c> um</c><00:18:37.520><c> the</c><00:18:37.600><c> fer</c><00:18:38.480><c> found</c><00:18:38.840><c> bugs</c>

00:18:39.390 --> 00:18:39.400 align:start position:0%
observe that um the fer found bugs
 

00:18:39.400 --> 00:18:43.310 align:start position:0%
observe that um the fer found bugs
basically<00:18:40.120><c> in</c><00:18:41.120><c> um</c><00:18:41.559><c> different</c><00:18:42.039><c> components</c><00:18:42.880><c> so</c>

00:18:43.310 --> 00:18:43.320 align:start position:0%
basically in um different components so
 

00:18:43.320 --> 00:18:45.430 align:start position:0%
basically in um different components so
we<00:18:43.440><c> found</c><00:18:43.679><c> bugs</c><00:18:43.960><c> in</c><00:18:44.200><c> the</c><00:18:44.360><c> compilers</c><00:18:45.080><c> we</c><00:18:45.200><c> found</c>

00:18:45.430 --> 00:18:45.440 align:start position:0%
we found bugs in the compilers we found
 

00:18:45.440 --> 00:18:48.830 align:start position:0%
we found bugs in the compilers we found
bugs<00:18:46.320><c> in</c><00:18:46.559><c> the</c><00:18:47.000><c> witness</c><00:18:47.440><c> generator</c><00:18:48.360><c> we</c><00:18:48.520><c> found</c>

00:18:48.830 --> 00:18:48.840 align:start position:0%
bugs in the witness generator we found
 

00:18:48.840 --> 00:18:51.149 align:start position:0%
bugs in the witness generator we found
bugs<00:18:49.200><c> in</c><00:18:49.400><c> the</c><00:18:49.760><c> approver</c><00:18:50.200><c> as</c><00:18:50.360><c> well</c><00:18:50.919><c> I</c><00:18:51.000><c> don't</c>

00:18:51.149 --> 00:18:51.159 align:start position:0%
bugs in the approver as well I don't
 

00:18:51.159 --> 00:18:52.909 align:start position:0%
bugs in the approver as well I don't
think<00:18:51.320><c> we</c><00:18:51.440><c> found</c><00:18:51.679><c> bugs</c><00:18:51.919><c> in</c><00:18:52.039><c> the</c><00:18:52.159><c> verifier</c>

00:18:52.909 --> 00:18:52.919 align:start position:0%
think we found bugs in the verifier
 

00:18:52.919 --> 00:18:55.669 align:start position:0%
think we found bugs in the verifier
seems<00:18:53.240><c> like</c><00:18:53.679><c> yeah</c><00:18:54.360><c> that's</c><00:18:54.640><c> kind</c><00:18:54.760><c> of</c><00:18:55.360><c> towards</c>

00:18:55.669 --> 00:18:55.679 align:start position:0%
seems like yeah that's kind of towards
 

00:18:55.679 --> 00:18:57.990 align:start position:0%
seems like yeah that's kind of towards
the<00:18:55.799><c> end</c><00:18:55.960><c> of</c><00:18:56.080><c> the</c><00:18:56.280><c> pipeline</c><00:18:57.280><c> uh</c><00:18:57.400><c> and</c><00:18:57.559><c> I</c><00:18:57.679><c> think</c>

00:18:57.990 --> 00:18:58.000 align:start position:0%
the end of the pipeline uh and I think
 

00:18:58.000 --> 00:18:59.950 align:start position:0%
the end of the pipeline uh and I think
many<00:18:58.240><c> people</c><00:18:58.480><c> are</c><00:18:58.799><c> are</c><00:18:59.120><c> you</c><00:18:59.240><c> know</c><00:18:59.720><c> very</c>

00:18:59.950 --> 00:18:59.960 align:start position:0%
many people are are you know very
 

00:18:59.960 --> 00:19:01.789 align:start position:0%
many people are are you know very
concerned<00:19:00.360><c> about</c><00:19:00.640><c> the</c><00:19:01.240><c> you</c><00:19:01.320><c> know</c><00:19:01.440><c> getting</c><00:19:01.679><c> the</c>

00:19:01.789 --> 00:19:01.799 align:start position:0%
concerned about the you know getting the
 

00:19:01.799 --> 00:19:04.149 align:start position:0%
concerned about the you know getting the
verifier<00:19:02.360><c> right</c><00:19:03.000><c> so</c><00:19:03.240><c> maybe</c><00:19:03.559><c> that's</c><00:19:03.919><c> also</c>

00:19:04.149 --> 00:19:04.159 align:start position:0%
verifier right so maybe that's also
 

00:19:04.159 --> 00:19:06.510 align:start position:0%
verifier right so maybe that's also
paying<00:19:04.480><c> off</c><00:19:04.919><c> uh</c><00:19:05.120><c> here</c><00:19:05.760><c> um</c><00:19:05.919><c> but</c><00:19:06.080><c> we'll</c><00:19:06.360><c> we'll</c>

00:19:06.510 --> 00:19:06.520 align:start position:0%
paying off uh here um but we'll we'll
 

00:19:06.520 --> 00:19:11.870 align:start position:0%
paying off uh here um but we'll we'll
keep<00:19:06.760><c> trying</c><00:19:07.600><c> um</c><00:19:08.200><c> we'll</c><00:19:09.200><c> yeah</c><00:19:09.480><c> we'll</c><00:19:09.720><c> see</c><00:19:10.880><c> nice</c>

00:19:11.870 --> 00:19:11.880 align:start position:0%
keep trying um we'll yeah we'll see nice
 

00:19:11.880 --> 00:19:14.270 align:start position:0%
keep trying um we'll yeah we'll see nice
um<00:19:12.320><c> okay</c><00:19:12.720><c> when</c><00:19:13.039><c> Kyo</c>

00:19:14.270 --> 00:19:14.280 align:start position:0%
um okay when Kyo
 

00:19:14.280 --> 00:19:18.110 align:start position:0%
um okay when Kyo
fuzzing<00:19:15.480><c> um</c><00:19:16.480><c> yeah</c><00:19:16.840><c> we're</c><00:19:17.440><c> I</c><00:19:17.559><c> guess</c><00:19:17.679><c> you</c><00:19:17.799><c> insert</c>

00:19:18.110 --> 00:19:18.120 align:start position:0%
fuzzing um yeah we're I guess you insert
 

00:19:18.120 --> 00:19:19.750 align:start position:0%
fuzzing um yeah we're I guess you insert
it<00:19:18.240><c> in</c><00:19:18.360><c> your</c><00:19:18.520><c> slide</c><00:19:18.799><c> if</c><00:19:18.919><c> we're</c><00:19:19.159><c> interested</c>

00:19:19.750 --> 00:19:19.760 align:start position:0%
it in your slide if we're interested
 

00:19:19.760 --> 00:19:21.270 align:start position:0%
it in your slide if we're interested
people<00:19:20.400><c> talk</c><00:19:20.559><c> to</c>

00:19:21.270 --> 00:19:21.280 align:start position:0%
people talk to
 

00:19:21.280 --> 00:19:24.549 align:start position:0%
people talk to
you<00:19:22.280><c> somebody</c><00:19:22.520><c> from</c><00:19:22.640><c> starware</c><00:19:23.320><c> wants</c><00:19:23.559><c> to</c><00:19:24.320><c> you</c>

00:19:24.549 --> 00:19:24.559 align:start position:0%
you somebody from starware wants to you
 

00:19:24.559 --> 00:19:28.390 align:start position:0%
you somebody from starware wants to you
know<00:19:25.559><c> uh</c><00:19:26.360><c> us</c><00:19:26.520><c> to</c><00:19:26.720><c> look</c><00:19:26.840><c> at</c><00:19:27.240><c> more</c><00:19:27.440><c> at</c><00:19:27.720><c> CYO</c><00:19:28.159><c> then</c>

00:19:28.390 --> 00:19:28.400 align:start position:0%
know uh us to look at more at CYO then
 

00:19:28.400 --> 00:19:30.310 align:start position:0%
know uh us to look at more at CYO then
yeah<00:19:28.520><c> please</c><00:19:28.720><c> please</c><00:19:28.880><c> reach</c><00:19:29.080><c> out</c><00:19:29.679><c> um</c><00:19:30.080><c> we're</c>

00:19:30.310 --> 00:19:30.320 align:start position:0%
yeah please please reach out um we're
 

00:19:30.320 --> 00:19:32.950 align:start position:0%
yeah please please reach out um we're
interested<00:19:31.080><c> um</c><00:19:31.240><c> it's</c><00:19:31.400><c> definitely</c><00:19:31.960><c> a</c><00:19:32.600><c> a</c><00:19:32.799><c> good</c>

00:19:32.950 --> 00:19:32.960 align:start position:0%
interested um it's definitely a a good
 

00:19:32.960 --> 00:19:35.750 align:start position:0%
interested um it's definitely a a good
idea<00:19:33.280><c> to</c><00:19:33.600><c> to</c><00:19:33.720><c> do</c><00:19:33.919><c> that</c><00:19:34.200><c> yeah</c><00:19:34.919><c> wonderful</c><00:19:35.559><c> well</c>

00:19:35.750 --> 00:19:35.760 align:start position:0%
idea to to do that yeah wonderful well
 

00:19:35.760 --> 00:19:38.510 align:start position:0%
idea to to do that yeah wonderful well
I'll<00:19:36.000><c> reach</c><00:19:36.440><c> out</c><00:19:37.440><c> um</c><00:19:37.720><c> what</c><00:19:37.840><c> do</c><00:19:37.960><c> you</c><00:19:38.080><c> think</c><00:19:38.280><c> of</c>

00:19:38.510 --> 00:19:38.520 align:start position:0%
I'll reach out um what do you think of
 

00:19:38.520 --> 00:19:41.070 align:start position:0%
I'll reach out um what do you think of
concolic<00:19:39.159><c> testing</c><00:19:39.600><c> of</c><00:19:39.799><c> Z</c>

00:19:41.070 --> 00:19:41.080 align:start position:0%
concolic testing of Z
 

00:19:41.080 --> 00:19:44.270 align:start position:0%
concolic testing of Z
circuits<00:19:42.080><c> um</c><00:19:42.960><c> I</c><00:19:43.039><c> had</c><00:19:43.200><c> to</c><00:19:43.320><c> ask</c><00:19:43.480><c> chat</c><00:19:43.760><c> GPT</c><00:19:44.120><c> what</c>

00:19:44.270 --> 00:19:44.280 align:start position:0%
circuits um I had to ask chat GPT what
 

00:19:44.280 --> 00:19:46.070 align:start position:0%
circuits um I had to ask chat GPT what
concolic<00:19:44.760><c> testing</c><00:19:45.120><c> is</c><00:19:45.520><c> okay</c><00:19:45.640><c> and</c><00:19:45.760><c> I</c><00:19:45.840><c> still</c>

00:19:46.070 --> 00:19:46.080 align:start position:0%
concolic testing is okay and I still
 

00:19:46.080 --> 00:19:49.070 align:start position:0%
concolic testing is okay and I still
don't<00:19:46.480><c> understand</c><00:19:46.600><c> it</c><00:19:47.280><c> okay</c><00:19:48.280><c> um</c><00:19:48.720><c> yeah</c><00:19:48.880><c> so</c>

00:19:49.070 --> 00:19:49.080 align:start position:0%
don't understand it okay um yeah so
 

00:19:49.080 --> 00:19:51.909 align:start position:0%
don't understand it okay um yeah so
concolic<00:19:49.559><c> testing</c><00:19:50.559><c> um</c><00:19:51.000><c> essentially</c><00:19:51.480><c> I</c><00:19:51.520><c> mean</c>

00:19:51.909 --> 00:19:51.919 align:start position:0%
concolic testing um essentially I mean
 

00:19:51.919 --> 00:19:53.830 align:start position:0%
concolic testing um essentially I mean
for<00:19:52.159><c> the</c><00:19:52.280><c> audience</c><00:19:52.760><c> maybe</c><00:19:53.280><c> it's</c><00:19:53.480><c> essentially</c>

00:19:53.830 --> 00:19:53.840 align:start position:0%
for the audience maybe it's essentially
 

00:19:53.840 --> 00:19:58.909 align:start position:0%
for the audience maybe it's essentially
a<00:19:53.960><c> way</c><00:19:54.440><c> to</c><00:19:55.280><c> you</c><00:19:55.400><c> know</c><00:19:55.600><c> generate</c><00:19:56.880><c> um</c><00:19:57.880><c> new</c><00:19:58.120><c> inputs</c>

00:19:58.909 --> 00:19:58.919 align:start position:0%
a way to you know generate um new inputs
 

00:19:58.919 --> 00:20:02.510 align:start position:0%
a way to you know generate um new inputs
by<00:19:59.159><c> doing</c><00:19:59.880><c> some</c><00:20:00.120><c> kind</c><00:20:00.240><c> of</c><00:20:00.400><c> symbolic</c><00:20:01.520><c> execution</c>

00:20:02.510 --> 00:20:02.520 align:start position:0%
by doing some kind of symbolic execution
 

00:20:02.520 --> 00:20:04.789 align:start position:0%
by doing some kind of symbolic execution
uh<00:20:02.720><c> but</c><00:20:03.280><c> basically</c><00:20:03.720><c> for</c><00:20:04.000><c> some</c><00:20:04.280><c> Expressions</c>

00:20:04.789 --> 00:20:04.799 align:start position:0%
uh but basically for some Expressions
 

00:20:04.799 --> 00:20:06.870 align:start position:0%
uh but basically for some Expressions
that<00:20:04.960><c> might</c><00:20:05.120><c> be</c><00:20:05.559><c> really</c><00:20:05.880><c> complex</c><00:20:06.480><c> like</c><00:20:06.720><c> you</c>

00:20:06.870 --> 00:20:06.880 align:start position:0%
that might be really complex like you
 

00:20:06.880 --> 00:20:09.630 align:start position:0%
that might be really complex like you
have<00:20:07.080><c> non</c><00:20:07.919><c> nonlinear</c><00:20:08.919><c> expressions</c><00:20:09.360><c> in</c><00:20:09.480><c> these</c>

00:20:09.630 --> 00:20:09.640 align:start position:0%
have non nonlinear expressions in these
 

00:20:09.640 --> 00:20:12.029 align:start position:0%
have non nonlinear expressions in these
circuits<00:20:10.400><c> so</c><00:20:10.640><c> there</c><00:20:10.799><c> you</c><00:20:10.919><c> might</c><00:20:11.080><c> want</c><00:20:11.200><c> to</c><00:20:11.880><c> uh</c>

00:20:12.029 --> 00:20:12.039 align:start position:0%
circuits so there you might want to uh
 

00:20:12.039 --> 00:20:14.909 align:start position:0%
circuits so there you might want to uh
concretize<00:20:12.600><c> some</c><00:20:13.000><c> inputs</c><00:20:13.919><c> um</c><00:20:14.400><c> and</c><00:20:14.559><c> that's</c><00:20:14.720><c> a</c>

00:20:14.909 --> 00:20:14.919 align:start position:0%
concretize some inputs um and that's a
 

00:20:14.919 --> 00:20:17.470 align:start position:0%
concretize some inputs um and that's a
con<00:20:15.679><c> concolic</c><00:20:16.240><c> part</c><00:20:16.440><c> so</c><00:20:16.600><c> it's</c><00:20:16.720><c> like</c><00:20:16.919><c> concrete</c>

00:20:17.470 --> 00:20:17.480 align:start position:0%
con concolic part so it's like concrete
 

00:20:17.480 --> 00:20:22.590 align:start position:0%
con concolic part so it's like concrete
and<00:20:18.039><c> symbolic</c><00:20:19.039><c> um</c><00:20:19.880><c> but</c><00:20:20.320><c> yeah</c><00:20:20.480><c> so</c><00:20:21.240><c> the</c><00:20:22.240><c> I</c><00:20:22.360><c> think</c>

00:20:22.590 --> 00:20:22.600 align:start position:0%
and symbolic um but yeah so the I think
 

00:20:22.600 --> 00:20:24.190 align:start position:0%
and symbolic um but yeah so the I think
that's<00:20:22.960><c> that's</c><00:20:23.080><c> an</c><00:20:23.240><c> interesting</c><00:20:23.840><c> area</c><00:20:24.080><c> it's</c>

00:20:24.190 --> 00:20:24.200 align:start position:0%
that's that's an interesting area it's
 

00:20:24.200 --> 00:20:26.149 align:start position:0%
that's that's an interesting area it's
not<00:20:24.600><c> sort</c><00:20:24.720><c> of</c><00:20:24.840><c> what</c><00:20:24.960><c> we</c><00:20:25.159><c> focused</c><00:20:25.559><c> on</c><00:20:26.000><c> uh</c>

00:20:26.149 --> 00:20:26.159 align:start position:0%
not sort of what we focused on uh
 

00:20:26.159 --> 00:20:27.830 align:start position:0%
not sort of what we focused on uh
because<00:20:26.440><c> we</c><00:20:26.799><c> we're</c><00:20:26.960><c> not</c><00:20:27.080><c> so</c><00:20:27.240><c> much</c><00:20:27.400><c> interested</c>

00:20:27.830 --> 00:20:27.840 align:start position:0%
because we we're not so much interested
 

00:20:27.840 --> 00:20:31.029 align:start position:0%
because we we're not so much interested
in<00:20:28.039><c> actually</c><00:20:28.799><c> ating</c><00:20:29.080><c> inputs</c><00:20:29.600><c> for</c><00:20:29.880><c> these</c><00:20:30.679><c> uh</c>

00:20:31.029 --> 00:20:31.039 align:start position:0%
in actually ating inputs for these uh
 

00:20:31.039 --> 00:20:33.070 align:start position:0%
in actually ating inputs for these uh
circuits<00:20:32.039><c> um</c><00:20:32.200><c> that's</c><00:20:32.360><c> something</c><00:20:32.640><c> you</c><00:20:32.760><c> would</c>

00:20:33.070 --> 00:20:33.080 align:start position:0%
circuits um that's something you would
 

00:20:33.080 --> 00:20:35.430 align:start position:0%
circuits um that's something you would
probably<00:20:33.320><c> want</c><00:20:33.400><c> to</c><00:20:33.600><c> do</c><00:20:34.000><c> if</c><00:20:34.159><c> you</c><00:20:34.799><c> want</c><00:20:34.960><c> to</c><00:20:35.320><c> have</c>

00:20:35.430 --> 00:20:35.440 align:start position:0%
probably want to do if you want to have
 

00:20:35.440 --> 00:20:37.310 align:start position:0%
probably want to do if you want to have
a<00:20:35.679><c> specific</c><00:20:36.080><c> circuit</c><00:20:36.640><c> that</c><00:20:36.760><c> you</c><00:20:36.840><c> want</c><00:20:36.960><c> to</c><00:20:37.240><c> you</c>

00:20:37.310 --> 00:20:37.320 align:start position:0%
a specific circuit that you want to you
 

00:20:37.320 --> 00:20:39.070 align:start position:0%
a specific circuit that you want to you
know<00:20:37.520><c> get</c><00:20:37.799><c> right</c><00:20:38.200><c> and</c><00:20:38.320><c> you</c><00:20:38.400><c> want</c><00:20:38.520><c> to</c><00:20:38.679><c> make</c><00:20:38.799><c> sure</c>

00:20:39.070 --> 00:20:39.080 align:start position:0%
know get right and you want to make sure
 

00:20:39.080 --> 00:20:41.669 align:start position:0%
know get right and you want to make sure
it<00:20:39.480><c> h</c><00:20:39.679><c> satisfies</c><00:20:40.200><c> some</c><00:20:40.400><c> properties</c><00:20:41.280><c> then</c><00:20:41.520><c> you</c>

00:20:41.669 --> 00:20:41.679 align:start position:0%
it h satisfies some properties then you
 

00:20:41.679 --> 00:20:43.390 align:start position:0%
it h satisfies some properties then you
probably<00:20:42.000><c> should</c><00:20:42.679><c> think</c><00:20:42.919><c> about</c><00:20:43.120><c> you</c><00:20:43.240><c> know</c>

00:20:43.390 --> 00:20:43.400 align:start position:0%
probably should think about you know
 

00:20:43.400 --> 00:20:46.789 align:start position:0%
probably should think about you know
concolic<00:20:43.880><c> testing</c><00:20:44.240><c> for</c><00:20:44.480><c> that</c><00:20:45.000><c> circuit</c><00:20:46.000><c> um</c>

00:20:46.789 --> 00:20:46.799 align:start position:0%
concolic testing for that circuit um
 

00:20:46.799 --> 00:20:50.149 align:start position:0%
concolic testing for that circuit um
yeah<00:20:47.799><c> perfect</c><00:20:48.240><c> thank</c><00:20:48.600><c> you</c><00:20:49.600><c> how</c><00:20:49.720><c> does</c><00:20:49.880><c> it</c><00:20:50.000><c> feel</c>

00:20:50.149 --> 00:20:50.159 align:start position:0%
yeah perfect thank you how does it feel
 

00:20:50.159 --> 00:20:52.350 align:start position:0%
yeah perfect thank you how does it feel
to<00:20:50.280><c> find</c><00:20:50.480><c> a</c><00:20:50.640><c> bug</c><00:20:51.159><c> it</c><00:20:51.400><c> like</c><00:20:51.679><c> literally</c><00:20:52.080><c> when</c><00:20:52.200><c> you</c>

00:20:52.350 --> 00:20:52.360 align:start position:0%
to find a bug it like literally when you
 

00:20:52.360 --> 00:20:55.590 align:start position:0%
to find a bug it like literally when you
find<00:20:52.960><c> one</c><00:20:53.960><c> is</c><00:20:54.039><c> it</c><00:20:54.440><c> is</c><00:20:54.559><c> it</c><00:20:54.760><c> scary</c><00:20:55.280><c> is</c><00:20:55.400><c> it</c>

00:20:55.590 --> 00:20:55.600 align:start position:0%
find one is it is it scary is it
 

00:20:55.600 --> 00:20:57.110 align:start position:0%
find one is it is it scary is it
exciting<00:20:56.000><c> I</c><00:20:56.080><c> mean</c><00:20:56.200><c> you're</c><00:20:56.440><c> looking</c><00:20:56.679><c> for</c><00:20:56.880><c> those</c>

00:20:57.110 --> 00:20:57.120 align:start position:0%
exciting I mean you're looking for those
 

00:20:57.120 --> 00:20:58.870 align:start position:0%
exciting I mean you're looking for those
so<00:20:57.240><c> it's</c><00:20:57.400><c> probably</c><00:20:57.679><c> a</c><00:20:57.799><c> bit</c><00:20:58.039><c> exciting</c><00:20:58.640><c> but</c><00:20:58.720><c> it's</c>

00:20:58.870 --> 00:20:58.880 align:start position:0%
so it's probably a bit exciting but it's
 

00:20:58.880 --> 00:21:00.230 align:start position:0%
so it's probably a bit exciting but it's
also<00:20:59.159><c> SEC</c><00:20:59.480><c> there's</c><00:20:59.600><c> probably</c><00:20:59.840><c> money</c><00:21:00.039><c> on</c><00:21:00.120><c> the</c>

00:21:00.230 --> 00:21:00.240 align:start position:0%
also SEC there's probably money on the
 

00:21:00.240 --> 00:21:02.470 align:start position:0%
also SEC there's probably money on the
line<00:21:00.679><c> how</c><00:21:00.760><c> does</c><00:21:00.960><c> it</c><00:21:01.120><c> feel</c><00:21:01.799><c> no</c><00:21:01.960><c> it's</c><00:21:02.120><c> definitely</c>

00:21:02.470 --> 00:21:02.480 align:start position:0%
line how does it feel no it's definitely
 

00:21:02.480 --> 00:21:04.470 align:start position:0%
line how does it feel no it's definitely
I<00:21:02.559><c> mean</c><00:21:02.679><c> it's</c><00:21:02.799><c> definitely</c><00:21:03.120><c> exciting</c><00:21:03.919><c> um</c><00:21:04.240><c> and</c><00:21:04.360><c> I</c>

00:21:04.470 --> 00:21:04.480 align:start position:0%
I mean it's definitely exciting um and I
 

00:21:04.480 --> 00:21:09.110 align:start position:0%
I mean it's definitely exciting um and I
work<00:21:04.960><c> a</c><00:21:05.000><c> lot</c><00:21:05.240><c> with</c><00:21:05.679><c> students</c><00:21:07.120><c> um</c><00:21:08.120><c> and</c><00:21:08.440><c> you</c><00:21:08.559><c> know</c>

00:21:09.110 --> 00:21:09.120 align:start position:0%
work a lot with students um and you know
 

00:21:09.120 --> 00:21:11.269 align:start position:0%
work a lot with students um and you know
it<00:21:09.480><c> it</c><00:21:09.640><c> really</c><00:21:10.279><c> you</c><00:21:10.400><c> know</c><00:21:10.679><c> they</c><00:21:10.840><c> you</c><00:21:10.919><c> can</c><00:21:11.039><c> see</c>

00:21:11.269 --> 00:21:11.279 align:start position:0%
it it really you know they you can see
 

00:21:11.279 --> 00:21:12.630 align:start position:0%
it it really you know they you can see
they're<00:21:11.600><c> they're</c><00:21:11.799><c> excited</c><00:21:12.120><c> when</c><00:21:12.240><c> they</c><00:21:12.360><c> find</c><00:21:12.520><c> a</c>

00:21:12.630 --> 00:21:12.640 align:start position:0%
they're they're excited when they find a
 

00:21:12.640 --> 00:21:15.029 align:start position:0%
they're they're excited when they find a
bark<00:21:13.400><c> uh</c><00:21:13.559><c> they're</c><00:21:13.760><c> happy</c><00:21:14.039><c> they're</c><00:21:14.360><c> making</c><00:21:14.919><c> you</c>

00:21:15.029 --> 00:21:15.039 align:start position:0%
bark uh they're happy they're making you
 

00:21:15.039 --> 00:21:18.350 align:start position:0%
bark uh they're happy they're making you
know<00:21:15.200><c> an</c><00:21:15.360><c> impact</c><00:21:16.279><c> um</c><00:21:17.120><c> and</c><00:21:17.320><c> also</c><00:21:17.600><c> the</c><00:21:17.760><c> reactions</c>

00:21:18.350 --> 00:21:18.360 align:start position:0%
know an impact um and also the reactions
 

00:21:18.360 --> 00:21:20.630 align:start position:0%
know an impact um and also the reactions
from<00:21:18.679><c> the</c><00:21:19.159><c> developers</c><00:21:19.840><c> are</c><00:21:20.120><c> a</c><00:21:20.320><c> great</c>

00:21:20.630 --> 00:21:20.640 align:start position:0%
from the developers are a great
 

00:21:20.640 --> 00:21:23.269 align:start position:0%
from the developers are a great
motivation<00:21:21.320><c> to</c><00:21:21.799><c> find</c><00:21:22.400><c> more</c><00:21:22.679><c> bugs</c><00:21:23.039><c> because</c>

00:21:23.269 --> 00:21:23.279 align:start position:0%
motivation to find more bugs because
 

00:21:23.279 --> 00:21:26.029 align:start position:0%
motivation to find more bugs because
usually<00:21:23.600><c> they're</c><00:21:24.039><c> very</c><00:21:25.039><c> um</c><00:21:25.360><c> yeah</c><00:21:25.640><c> they</c><00:21:25.840><c> have</c>

00:21:26.029 --> 00:21:26.039 align:start position:0%
usually they're very um yeah they have
 

00:21:26.039 --> 00:21:28.310 align:start position:0%
usually they're very um yeah they have
been<00:21:26.200><c> very</c><00:21:26.440><c> positive</c><00:21:27.159><c> I</c><00:21:27.279><c> don't</c><00:21:27.559><c> believe</c><00:21:27.960><c> you</c>

00:21:28.310 --> 00:21:28.320 align:start position:0%
been very positive I don't believe you
 

00:21:28.320 --> 00:21:29.590 align:start position:0%
been very positive I don't believe you
there<00:21:28.600><c> there's</c><00:21:28.760><c> no</c><00:21:28.880><c> way</c><00:21:29.000><c> you</c><00:21:29.120><c> go</c><00:21:29.240><c> to</c><00:21:29.400><c> people</c>

00:21:29.590 --> 00:21:29.600 align:start position:0%
there there's no way you go to people
 

00:21:29.600 --> 00:21:31.269 align:start position:0%
there there's no way you go to people
and<00:21:29.720><c> say</c><00:21:29.960><c> Yeah</c><00:21:30.159><c> I</c><00:21:30.279><c> broke</c><00:21:30.559><c> your</c><00:21:31.200><c> and</c>

00:21:31.269 --> 00:21:31.279 align:start position:0%
and say Yeah I broke your and
 

00:21:31.279 --> 00:21:32.870 align:start position:0%
and say Yeah I broke your and
they're<00:21:31.480><c> like</c><00:21:31.720><c> oh</c><00:21:31.960><c> yeah</c>

00:21:32.870 --> 00:21:32.880 align:start position:0%
they're like oh yeah
 

00:21:32.880 --> 00:21:35.909 align:start position:0%
they're like oh yeah
amazing<00:21:33.880><c> yeah</c><00:21:34.320><c> I</c><00:21:34.400><c> mean</c><00:21:34.600><c> if</c><00:21:34.799><c> if</c><00:21:35.120><c> if</c><00:21:35.240><c> you're</c><00:21:35.720><c> sort</c>

00:21:35.909 --> 00:21:35.919 align:start position:0%
amazing yeah I mean if if if you're sort
 

00:21:35.919 --> 00:21:37.350 align:start position:0%
amazing yeah I mean if if if you're sort
of<00:21:36.279><c> yeah</c><00:21:36.480><c> if</c>

00:21:37.350 --> 00:21:37.360 align:start position:0%
of yeah if
 

00:21:37.360 --> 00:21:41.310 align:start position:0%
of yeah if
you're<00:21:38.360><c> um</c><00:21:38.919><c> yeah</c><00:21:39.559><c> L2</c><00:21:40.000><c> and</c><00:21:40.200><c> one</c><00:21:40.400><c> bug</c><00:21:40.760><c> like</c><00:21:40.960><c> this</c>

00:21:41.310 --> 00:21:41.320 align:start position:0%
you're um yeah L2 and one bug like this
 

00:21:41.320 --> 00:21:44.269 align:start position:0%
you're um yeah L2 and one bug like this
can<00:21:41.559><c> you</c><00:21:41.679><c> know</c><00:21:41.880><c> wreck</c><00:21:42.200><c> your</c><00:21:42.400><c> system</c><00:21:43.120><c> then</c><00:21:44.120><c> yeah</c>

00:21:44.269 --> 00:21:44.279 align:start position:0%
can you know wreck your system then yeah
 

00:21:44.279 --> 00:21:46.470 align:start position:0%
can you know wreck your system then yeah
in<00:21:44.440><c> some</c><00:21:44.840><c> sense</c><00:21:45.159><c> your</c><00:21:45.440><c> your</c><00:21:45.600><c> job</c><00:21:45.840><c> is</c><00:21:46.000><c> also</c><00:21:46.320><c> on</c>

00:21:46.470 --> 00:21:46.480 align:start position:0%
in some sense your your job is also on
 

00:21:46.480 --> 00:21:49.029 align:start position:0%
in some sense your your job is also on
the<00:21:46.640><c> line</c><00:21:47.159><c> so</c><00:21:47.440><c> you</c><00:21:47.559><c> should</c><00:21:48.360><c> you</c><00:21:48.520><c> want</c><00:21:48.640><c> to</c><00:21:48.799><c> find</c>

00:21:49.029 --> 00:21:49.039 align:start position:0%
the line so you should you want to find
 

00:21:49.039 --> 00:21:50.430 align:start position:0%
the line so you should you want to find
those<00:21:49.240><c> bugs</c><00:21:49.480><c> I'm</c><00:21:49.559><c> not</c><00:21:49.640><c> saying</c><00:21:49.880><c> you</c><00:21:50.000><c> don't</c><00:21:50.279><c> want</c>

00:21:50.430 --> 00:21:50.440 align:start position:0%
those bugs I'm not saying you don't want
 

00:21:50.440 --> 00:21:53.470 align:start position:0%
those bugs I'm not saying you don't want
to<00:21:50.640><c> it's</c><00:21:50.799><c> just</c><00:21:51.840><c> scary</c><00:21:52.840><c> when</c><00:21:52.960><c> I</c><00:21:53.039><c> think</c><00:21:53.240><c> about</c>

00:21:53.470 --> 00:21:53.480 align:start position:0%
to it's just scary when I think about
 

00:21:53.480 --> 00:21:55.669 align:start position:0%
to it's just scary when I think about
bugs<00:21:53.720><c> I</c><00:21:53.840><c> think</c><00:21:54.000><c> like</c><00:21:54.200><c> yes</c><00:21:54.360><c> I</c><00:21:54.440><c> want</c><00:21:54.559><c> to</c><00:21:54.720><c> fix</c><00:21:55.039><c> them</c>

00:21:55.669 --> 00:21:55.679 align:start position:0%
bugs I think like yes I want to fix them
 

00:21:55.679 --> 00:21:56.830 align:start position:0%
bugs I think like yes I want to fix them
the<00:21:55.760><c> first</c><00:21:55.919><c> thing</c><00:21:56.080><c> that</c><00:21:56.240><c> comes</c><00:21:56.400><c> to</c><00:21:56.520><c> mind</c><00:21:56.679><c> is</c>

00:21:56.830 --> 00:21:56.840 align:start position:0%
the first thing that comes to mind is
 

00:21:56.840 --> 00:21:59.110 align:start position:0%
the first thing that comes to mind is
like<00:21:57.159><c> oh</c><00:21:57.480><c> yes</c><00:21:57.880><c> no</c>

00:21:59.110 --> 00:21:59.120 align:start position:0%
like oh yes no
 

00:21:59.120 --> 00:22:00.510 align:start position:0%
like oh yes no
but<00:21:59.279><c> you're</c><00:21:59.480><c> right</c><00:21:59.640><c> it's</c><00:21:59.799><c> better</c><00:22:00.000><c> to</c><00:22:00.120><c> be</c><00:22:00.240><c> aware</c>

00:22:00.510 --> 00:22:00.520 align:start position:0%
but you're right it's better to be aware
 

00:22:00.520 --> 00:22:02.470 align:start position:0%
but you're right it's better to be aware
of<00:22:00.880><c> FR</c><00:22:01.240><c> than</c><00:22:01.400><c> not</c><00:22:01.720><c> okay</c><00:22:01.880><c> we</c><00:22:01.960><c> can</c><00:22:02.120><c> actually</c><00:22:02.320><c> take</c>

00:22:02.470 --> 00:22:02.480 align:start position:0%
of FR than not okay we can actually take
 

00:22:02.480 --> 00:22:05.390 align:start position:0%
of FR than not okay we can actually take
the<00:22:02.720><c> last</c><00:22:03.039><c> oh</c><00:22:03.400><c> one</c><00:22:03.640><c> seconds</c><00:22:04.039><c> left</c><00:22:05.000><c> let's</c><00:22:05.159><c> wrap</c>

00:22:05.390 --> 00:22:05.400 align:start position:0%
the last oh one seconds left let's wrap
 

00:22:05.400 --> 00:22:07.950 align:start position:0%
the last oh one seconds left let's wrap
it<00:22:05.520><c> up</c><00:22:05.679><c> or</c><00:22:05.840><c> do</c><00:22:05.919><c> you</c><00:22:06.039><c> want</c><00:22:06.320><c> to</c><00:22:07.320><c> are</c><00:22:07.440><c> you</c><00:22:07.600><c> using</c>

00:22:07.950 --> 00:22:07.960 align:start position:0%
it up or do you want to are you using
 

00:22:07.960 --> 00:22:10.110 align:start position:0%
it up or do you want to are you using
property<00:22:08.320><c> based</c><00:22:08.600><c> testing</c><00:22:08.880><c> for</c><00:22:09.080><c> choosing</c><00:22:09.440><c> the</c>

00:22:10.110 --> 00:22:10.120 align:start position:0%
property based testing for choosing the
 

00:22:10.120 --> 00:22:13.350 align:start position:0%
property based testing for choosing the
input<00:22:11.120><c> um</c><00:22:12.080><c> we're</c><00:22:12.480><c> I</c><00:22:12.559><c> mean</c><00:22:12.720><c> you</c><00:22:12.799><c> can</c><00:22:13.000><c> call</c><00:22:13.200><c> it</c>

00:22:13.350 --> 00:22:13.360 align:start position:0%
input um we're I mean you can call it
 

00:22:13.360 --> 00:22:14.710 align:start position:0%
input um we're I mean you can call it
property<00:22:13.679><c> based</c><00:22:13.960><c> testing</c><00:22:14.400><c> but</c><00:22:14.559><c> we're</c>

00:22:14.710 --> 00:22:14.720 align:start position:0%
property based testing but we're
 

00:22:14.720 --> 00:22:16.750 align:start position:0%
property based testing but we're
generating<00:22:15.159><c> the</c><00:22:15.279><c> inputs</c><00:22:15.720><c> right</c><00:22:15.880><c> now</c><00:22:16.600><c> uh</c>

00:22:16.750 --> 00:22:16.760 align:start position:0%
generating the inputs right now uh
 

00:22:16.760 --> 00:22:18.149 align:start position:0%
generating the inputs right now uh
completely<00:22:17.200><c> randomly</c><00:22:17.640><c> so</c><00:22:17.799><c> it's</c><00:22:17.919><c> kind</c><00:22:18.000><c> of</c>

00:22:18.149 --> 00:22:18.159 align:start position:0%
completely randomly so it's kind of
 

00:22:18.159 --> 00:22:20.390 align:start position:0%
completely randomly so it's kind of
blackbox<00:22:18.600><c> fuzzing</c><00:22:19.200><c> that</c><00:22:19.360><c> we're</c><00:22:19.520><c> doing</c><00:22:20.279><c> and</c>

00:22:20.390 --> 00:22:20.400 align:start position:0%
blackbox fuzzing that we're doing and
 

00:22:20.400 --> 00:22:22.070 align:start position:0%
blackbox fuzzing that we're doing and
we're<00:22:20.520><c> also</c><00:22:20.720><c> considering</c><00:22:21.080><c> to</c><00:22:21.240><c> do</c><00:22:21.480><c> more</c><00:22:21.960><c> you</c>

00:22:22.070 --> 00:22:22.080 align:start position:0%
we're also considering to do more you
 

00:22:22.080 --> 00:22:23.990 align:start position:0%
we're also considering to do more you
know<00:22:22.320><c> feedback</c><00:22:22.799><c> directed</c><00:22:23.159><c> fuzzing</c><00:22:23.760><c> like</c><00:22:23.919><c> you</c>

00:22:23.990 --> 00:22:24.000 align:start position:0%
know feedback directed fuzzing like you
 

00:22:24.000 --> 00:22:27.909 align:start position:0%
know feedback directed fuzzing like you
saw<00:22:24.400><c> in</c><00:22:24.520><c> the</c><00:22:24.679><c> last</c><00:22:24.880><c> talk</c><00:22:25.600><c> um</c><00:22:26.360><c> yeah</c><00:22:27.279><c> fantastic</c>

00:22:27.909 --> 00:22:27.919 align:start position:0%
saw in the last talk um yeah fantastic
 

00:22:27.919 --> 00:22:32.799 align:start position:0%
saw in the last talk um yeah fantastic
thank<00:22:28.080><c> you</c><00:22:28.240><c> thank</c><00:22:28.360><c> you</c><00:22:28.600><c> Valentine</c><00:22:29.600><c> thank</c><00:22:29.799><c> you</c>

