WEBVTT
Kind: captions
Language: en

00:00:01.070 --> 00:01:05.399 align:start position:0%
 
[Applause]

00:01:05.399 --> 00:01:05.409 align:start position:0%
 
 

00:01:05.409 --> 00:01:08.890 align:start position:0%
 
so<00:01:06.409><c> this</c><00:01:07.220><c> is</c><00:01:07.400><c> more</c><00:01:07.940><c> or</c><00:01:07.970><c> less</c><00:01:08.120><c> a</c><00:01:08.420><c> continuation</c>

00:01:08.890 --> 00:01:08.900 align:start position:0%
so this is more or less a continuation
 

00:01:08.900 --> 00:01:12.690 align:start position:0%
so this is more or less a continuation
of<00:01:09.320><c> the</c><00:01:09.920><c> talk</c><00:01:10.310><c> I</c><00:01:10.460><c> gave</c><00:01:10.490><c> at</c><00:01:10.960><c> DEFCON</c><00:01:11.960><c> 4</c>

00:01:12.690 --> 00:01:12.700 align:start position:0%
of the talk I gave at DEFCON 4
 

00:01:12.700 --> 00:01:18.100 align:start position:0%
of the talk I gave at DEFCON 4
let's<00:01:13.700><c> guess</c><00:01:15.190><c> community</c><00:01:16.190><c> it's</c><00:01:17.180><c> not</c><00:01:17.810><c> problem</c>

00:01:18.100 --> 00:01:18.110 align:start position:0%
let's guess community it's not problem
 

00:01:18.110 --> 00:01:19.899 align:start position:0%
let's guess community it's not problem
if<00:01:18.170><c> you</c><00:01:18.260><c> haven't</c><00:01:18.530><c> seen</c><00:01:18.650><c> that</c><00:01:18.680><c> talk</c><00:01:19.040><c> just</c>

00:01:19.899 --> 00:01:19.909 align:start position:0%
if you haven't seen that talk just
 

00:01:19.909 --> 00:01:26.170 align:start position:0%
if you haven't seen that talk just
context<00:01:20.810><c> not</c><00:01:21.440><c> talk</c><00:01:21.740><c> I</c><00:01:24.160><c> explained</c><00:01:25.160><c> how</c><00:01:25.340><c> we</c><00:01:25.759><c> want</c>

00:01:26.170 --> 00:01:26.180 align:start position:0%
context not talk I explained how we want
 

00:01:26.180 --> 00:01:29.499 align:start position:0%
context not talk I explained how we want
to<00:01:26.390><c> want</c><00:01:27.320><c> to</c><00:01:27.530><c> to</c><00:01:27.830><c> leverage</c><00:01:28.430><c> an</c><00:01:28.970><c> intermediate</c>

00:01:29.499 --> 00:01:29.509 align:start position:0%
to want to to leverage an intermediate
 

00:01:29.509 --> 00:01:42.930 align:start position:0%
to want to to leverage an intermediate
language<00:01:30.700><c> so</c><00:01:31.700><c> that</c><00:01:39.729><c> and</c><00:01:40.780><c> in</c><00:01:41.780><c> several</c><00:01:41.990><c> involve</c>

00:01:42.930 --> 00:01:42.940 align:start position:0%
language so that and in several involve
 

00:01:42.940 --> 00:01:47.980 align:start position:0%
language so that and in several involve
accessibility<00:01:43.940><c> it</c><00:01:44.000><c> was</c><00:01:44.390><c> which</c><00:01:44.660><c> back-end</c><00:01:46.990><c> you</c>

00:01:47.980 --> 00:01:47.990 align:start position:0%
accessibility it was which back-end you
 

00:01:47.990 --> 00:01:50.440 align:start position:0%
accessibility it was which back-end you
have<00:01:48.289><c> to</c><00:01:48.380><c> comply</c><00:01:48.680><c> to</c><00:01:48.890><c> IBM</c><00:01:49.399><c> to</c><00:01:49.700><c> be</c><00:01:49.850><c> Muslim</c><00:01:50.210><c> in</c>

00:01:50.440 --> 00:01:50.450 align:start position:0%
have to comply to IBM to be Muslim in
 

00:01:50.450 --> 00:01:54.389 align:start position:0%
have to comply to IBM to be Muslim in
one<00:01:50.750><c> run</c><00:01:50.899><c> five</c><00:01:51.080><c> or</c>

00:01:54.389 --> 00:01:54.399 align:start position:0%
 
 

00:01:54.399 --> 00:01:57.819 align:start position:0%
 
and<00:01:55.689><c> on</c><00:01:56.689><c> the</c><00:01:56.810><c> bottom</c><00:01:56.930><c> you</c><00:01:57.229><c> can</c><00:01:57.320><c> see</c><00:01:57.500><c> some</c>

00:01:57.819 --> 00:01:57.829 align:start position:0%
and on the bottom you can see some
 

00:01:57.829 --> 00:02:01.539 align:start position:0%
and on the bottom you can see some
example<00:01:58.220><c> new</c><00:01:58.399><c> code</c><00:01:58.670><c> is</c><00:01:59.500><c> in</c><00:02:00.500><c> allocation</c><00:02:01.159><c> or</c>

00:02:01.539 --> 00:02:01.549 align:start position:0%
example new code is in allocation or
 

00:02:01.549 --> 00:02:04.539 align:start position:0%
example new code is in allocation or
it's<00:02:01.640><c> a</c><00:02:01.700><c> standard</c><00:02:02.420><c> sylheti</c><00:02:03.100><c> alligator</c><00:02:04.100><c> memory</c>

00:02:04.539 --> 00:02:04.549 align:start position:0%
it's a standard sylheti alligator memory
 

00:02:04.549 --> 00:02:08.380 align:start position:0%
it's a standard sylheti alligator memory
allocator<00:02:04.960><c> and</c><00:02:05.960><c> i</c><00:02:06.049><c> think</c><00:02:06.409><c> is</c><00:02:06.820><c> obvious</c><00:02:07.820><c> what</c><00:02:08.239><c> it</c>

00:02:08.380 --> 00:02:08.390 align:start position:0%
allocator and i think is obvious what it
 

00:02:08.390 --> 00:02:19.930 align:start position:0%
allocator and i think is obvious what it
does

00:02:19.930 --> 00:02:19.940 align:start position:0%
 
 

00:02:19.940 --> 00:02:22.280 align:start position:0%
 
okay<00:02:20.940><c> what</c><00:02:21.480><c> did</c><00:02:21.540><c> we</c><00:02:21.600><c> do</c><00:02:21.810><c> so</c><00:02:22.050><c> this</c><00:02:22.230><c> was</c>

00:02:22.280 --> 00:02:22.290 align:start position:0%
okay what did we do so this was
 

00:02:22.290 --> 00:02:24.470 align:start position:0%
okay what did we do so this was
basically<00:02:22.710><c> we</c><00:02:23.010><c> have</c><00:02:23.160><c> up</c><00:02:23.310><c> the</c><00:02:23.460><c> top</c><00:02:24.120><c> of</c><00:02:24.270><c> last</c>

00:02:24.470 --> 00:02:24.480 align:start position:0%
basically we have up the top of last
 

00:02:24.480 --> 00:02:26.810 align:start position:0%
basically we have up the top of last
year<00:02:24.690><c> and</c><00:02:24.840><c> what</c><00:02:25.020><c> happened</c><00:02:25.290><c> after</c><00:02:25.650><c> that</c><00:02:25.820><c> we</c>

00:02:26.810 --> 00:02:26.820 align:start position:0%
year and what happened after that we
 

00:02:26.820 --> 00:02:29.420 align:start position:0%
year and what happened after that we
started<00:02:27.240><c> the</c><00:02:28.200><c> rewrite</c><00:02:28.680><c> of</c><00:02:28.920><c> the</c><00:02:28.980><c> salinity</c>

00:02:29.420 --> 00:02:29.430 align:start position:0%
started the rewrite of the salinity
 

00:02:29.430 --> 00:02:35.690 align:start position:0%
started the rewrite of the salinity
generator<00:02:33.800><c> this</c><00:02:34.800><c> would</c><00:02:34.980><c> be</c><00:02:35.070><c> the</c><00:02:35.190><c> first</c><00:02:35.370><c> third</c>

00:02:35.690 --> 00:02:35.700 align:start position:0%
generator this would be the first third
 

00:02:35.700 --> 00:02:40.450 align:start position:0%
generator this would be the first third
of<00:02:35.880><c> the</c><00:02:35.940><c> talk</c><00:02:36.270><c> then</c><00:02:36.990><c> I</c><00:02:37.440><c> will</c><00:02:37.920><c> tell</c><00:02:38.100><c> you</c><00:02:38.280><c> how</c><00:02:39.320><c> he</c>

00:02:40.450 --> 00:02:40.460 align:start position:0%
of the talk then I will tell you how he
 

00:02:40.460 --> 00:02:44.180 align:start position:0%
of the talk then I will tell you how he
wasn't<00:02:41.460><c> called</c><00:02:41.670><c> from</c><00:02:42.000><c> solidity</c><00:02:42.360><c> and</c><00:02:42.950><c> the</c><00:02:43.950><c> last</c>

00:02:44.180 --> 00:02:44.190 align:start position:0%
wasn't called from solidity and the last
 

00:02:44.190 --> 00:02:51.640 align:start position:0%
wasn't called from solidity and the last
part<00:02:44.490><c> of</c><00:02:45.240><c> the</c><00:02:49.070><c> perpetrator</c><00:02:50.070><c> we</c><00:02:51.030><c> are</c><00:02:51.150><c> actually</c>

00:02:51.640 --> 00:02:51.650 align:start position:0%
part of the perpetrator we are actually
 

00:02:51.650 --> 00:02:54.200 align:start position:0%
part of the perpetrator we are actually
far<00:02:52.650><c> with</c><00:02:52.800><c> that</c><00:02:52.830><c> we</c><00:02:53.250><c> had</c><00:02:53.400><c> to</c><00:02:53.580><c> stop</c><00:02:53.910><c> at</c><00:02:54.060><c> some</c>

00:02:54.200 --> 00:02:54.210 align:start position:0%
far with that we had to stop at some
 

00:02:54.210 --> 00:02:56.300 align:start position:0%
far with that we had to stop at some
point<00:02:54.510><c> because</c><00:02:54.720><c> we</c><00:02:54.990><c> want</c><00:02:55.170><c> to</c><00:02:55.290><c> really</c><00:02:55.980><c> insulate</c>

00:02:56.300 --> 00:02:56.310 align:start position:0%
point because we want to really insulate
 

00:02:56.310 --> 00:03:03.320 align:start position:0%
point because we want to really insulate
you<00:02:56.610><c> zero</c><00:02:56.940><c> sixes</c>

00:03:03.320 --> 00:03:03.330 align:start position:0%
 
 

00:03:03.330 --> 00:03:43.560 align:start position:0%
 
we<00:03:04.330><c> are</c><00:03:21.990><c> the</c><00:03:41.730><c> reason</c><00:03:42.730><c> the</c><00:03:42.910><c> main</c><00:03:43.000><c> reason</c><00:03:43.060><c> why</c><00:03:43.450><c> we</c>

00:03:43.560 --> 00:03:43.570 align:start position:0%
we are the reason the main reason why we
 

00:03:43.570 --> 00:03:45.690 align:start position:0%
we are the reason the main reason why we
didn't<00:03:44.170><c> do</c><00:03:44.290><c> that</c><00:03:44.440><c> in</c><00:03:44.770><c> the</c><00:03:44.890><c> o2</c><00:03:45.190><c> villages</c>

00:03:45.690 --> 00:03:45.700 align:start position:0%
didn't do that in the o2 villages
 

00:03:45.700 --> 00:03:48.980 align:start position:0%
didn't do that in the o2 villages
because<00:03:46.090><c> it</c><00:03:47.610><c> yeah</c>

00:03:48.980 --> 00:03:48.990 align:start position:0%
because it yeah
 

00:03:48.990 --> 00:04:16.110 align:start position:0%
because it yeah
these<00:03:49.990><c> checks</c><00:03:50.620><c> will</c><00:03:51.220><c> have</c><00:03:51.430><c> promised</c><00:04:15.120><c> Ofsted</c>

00:04:16.110 --> 00:04:16.120 align:start position:0%
these checks will have promised Ofsted
 

00:04:16.120 --> 00:04:17.909 align:start position:0%
these checks will have promised Ofsted
you<00:04:16.720><c> know</c><00:04:16.810><c> he</c><00:04:16.930><c> has</c><00:04:17.019><c> those</c><00:04:17.229><c> variables</c><00:04:17.739><c> and</c>

00:04:17.909 --> 00:04:17.919 align:start position:0%
you know he has those variables and
 

00:04:17.919 --> 00:04:22.940 align:start position:0%
you know he has those variables and
these<00:04:18.790><c> are</c><00:04:19.320><c> rather</c><00:04:20.320><c> direct</c><00:04:20.890><c> translation</c><00:04:21.430><c> from</c>

00:04:22.940 --> 00:04:22.950 align:start position:0%
these are rather direct translation from
 

00:04:22.950 --> 00:04:26.610 align:start position:0%
these are rather direct translation from
variables<00:04:23.950><c> to</c><00:04:24.340><c> a</c><00:04:24.460><c> state</c><00:04:24.820><c> machine</c><00:04:25.410><c> but</c><00:04:26.410><c> in</c>

00:04:26.610 --> 00:04:26.620 align:start position:0%
variables to a state machine but in
 

00:04:26.620 --> 00:04:27.930 align:start position:0%
variables to a state machine but in
general<00:04:26.919><c> you</c><00:04:27.070><c> have</c><00:04:27.100><c> to</c><00:04:27.400><c> worry</c><00:04:27.760><c> about</c>

00:04:27.930 --> 00:04:27.940 align:start position:0%
general you have to worry about
 

00:04:27.940 --> 00:04:33.120 align:start position:0%
general you have to worry about
mystically<00:04:28.540><c> also</c><00:04:30.270><c> there</c><00:04:31.270><c> is</c><00:04:31.740><c> one</c><00:04:32.740><c> of</c><00:04:32.830><c> the</c><00:04:32.919><c> most</c>

00:04:33.120 --> 00:04:33.130 align:start position:0%
mystically also there is one of the most
 

00:04:33.130 --> 00:04:35.820 align:start position:0%
mystically also there is one of the most
complex<00:04:33.630><c> parts</c><00:04:34.630><c> in</c><00:04:34.870><c> the</c><00:04:35.200><c> celebrity</c><00:04:35.650><c> culture</c>

00:04:35.820 --> 00:04:35.830 align:start position:0%
complex parts in the celebrity culture
 

00:04:35.830 --> 00:04:39.060 align:start position:0%
complex parts in the celebrity culture
it<00:04:36.160><c> is</c><00:04:36.780><c> false</c><00:04:37.780><c> because</c><00:04:38.050><c> the</c><00:04:38.380><c> product</c><00:04:38.740><c> foot</c><00:04:38.890><c> has</c>

00:04:39.060 --> 00:04:39.070 align:start position:0%
it is false because the product foot has
 

00:04:39.070 --> 00:04:44.100 align:start position:0%
it is false because the product foot has
so<00:04:39.280><c> many</c><00:04:39.450><c> parameters</c><00:04:40.450><c> and</c><00:04:42.600><c> it</c><00:04:43.600><c> also</c><00:04:43.750><c> depends</c>

00:04:44.100 --> 00:04:44.110 align:start position:0%
so many parameters and it also depends
 

00:04:44.110 --> 00:04:46.140 align:start position:0%
so many parameters and it also depends
whether<00:04:44.290><c> one</c><00:04:44.530><c> whether</c><00:04:44.919><c> you</c><00:04:45.160><c> want</c><00:04:45.490><c> ivory</c><00:04:45.700><c> or</c><00:04:46.120><c> a</c>

00:04:46.140 --> 00:04:46.150 align:start position:0%
whether one whether you want ivory or a
 

00:04:46.150 --> 00:04:48.150 align:start position:0%
whether one whether you want ivory or a
regular<00:04:46.690><c> function</c><00:04:46.900><c> or</c><00:04:47.290><c> whether</c><00:04:47.590><c> you</c><00:04:47.740><c> specify</c>

00:04:48.150 --> 00:04:48.160 align:start position:0%
regular function or whether you specify
 

00:04:48.160 --> 00:04:50.159 align:start position:0%
regular function or whether you specify
the<00:04:48.220><c> gas</c><00:04:48.460><c> over</c><00:04:48.760><c> they</c><00:04:49.030><c> specify</c><00:04:49.570><c> the</c><00:04:49.630><c> value</c><00:04:49.990><c> and</c>

00:04:50.159 --> 00:04:50.169 align:start position:0%
the gas over they specify the value and
 

00:04:50.169 --> 00:04:56.909 align:start position:0%
the gas over they specify the value and
so<00:04:50.260><c> on</c><00:04:50.380><c> so</c><00:04:50.950><c> there</c><00:04:51.130><c> is</c><00:04:53.760><c> different</c><00:04:54.760><c> ways</c><00:04:54.820><c> to</c><00:04:55.919><c> use</c>

00:04:56.909 --> 00:04:56.919 align:start position:0%
so on so there is different ways to use
 

00:04:56.919 --> 00:04:59.070 align:start position:0%
so on so there is different ways to use
the<00:04:57.160><c> follow</c><00:04:57.400><c> up</c><00:04:57.490><c> code</c><00:04:57.760><c> and</c><00:04:58.000><c> all</c><00:04:58.630><c> the</c><00:04:58.750><c> time</c><00:04:58.930><c> you</c>

00:04:59.070 --> 00:04:59.080 align:start position:0%
the follow up code and all the time you
 

00:04:59.080 --> 00:05:01.290 align:start position:0%
the follow up code and all the time you
have<00:04:59.229><c> to</c><00:04:59.550><c> keep</c><00:05:00.550><c> track</c><00:05:00.760><c> of</c><00:05:00.820><c> where</c><00:05:01.270><c> everything</c>

00:05:01.290 --> 00:05:01.300 align:start position:0%
have to keep track of where everything
 

00:05:01.300 --> 00:05:03.030 align:start position:0%
have to keep track of where everything
is<00:05:01.840><c> on</c><00:05:02.050><c> the</c><00:05:02.200><c> stack</c><00:05:02.440><c> in</c><00:05:02.620><c> the</c><00:05:02.710><c> old</c><00:05:02.830><c> code</c>

00:05:03.030 --> 00:05:03.040 align:start position:0%
is on the stack in the old code
 

00:05:03.040 --> 00:05:05.030 align:start position:0%
is on the stack in the old code
generator<00:05:03.370><c> and</c><00:05:03.700><c> if</c><00:05:04.030><c> you</c><00:05:04.150><c> consider</c><00:05:04.570><c> it</c><00:05:04.690><c> just</c>

00:05:05.030 --> 00:05:05.040 align:start position:0%
generator and if you consider it just
 

00:05:05.040 --> 00:05:07.350 align:start position:0%
generator and if you consider it just
reference<00:05:06.040><c> stuff</c><00:05:06.310><c> by</c><00:05:06.610><c> their</c><00:05:06.910><c> names</c>

00:05:07.350 --> 00:05:07.360 align:start position:0%
reference stuff by their names
 

00:05:07.360 --> 00:05:14.970 align:start position:0%
reference stuff by their names
it's<00:05:08.050><c> just</c><00:05:08.349><c> yes</c><00:05:09.270><c> and</c>

00:05:14.970 --> 00:05:14.980 align:start position:0%
 
 

00:05:14.980 --> 00:05:19.170 align:start position:0%
 
another<00:05:15.670><c> thing</c><00:05:15.940><c> is</c><00:05:16.240><c> that</c><00:05:17.190><c> so</c><00:05:18.190><c> when</c><00:05:18.670><c> the</c><00:05:18.880><c> Opel</c>

00:05:19.170 --> 00:05:19.180 align:start position:0%
another thing is that so when the Opel
 

00:05:19.180 --> 00:05:22.140 align:start position:0%
another thing is that so when the Opel
generator<00:05:19.620><c> we</c><00:05:20.620><c> forgot</c><00:05:21.070><c> to</c><00:05:21.100><c> the</c><00:05:21.370><c> world</c><00:05:21.610><c> did</c><00:05:22.120><c> not</c>

00:05:22.140 --> 00:05:22.150 align:start position:0%
generator we forgot to the world did not
 

00:05:22.150 --> 00:05:24.990 align:start position:0%
generator we forgot to the world did not
yet<00:05:22.480><c> implement</c><00:05:22.960><c> a</c><00:05:23.170><c> certain</c><00:05:23.440><c> feature</c><00:05:23.710><c> but</c><00:05:24.520><c> by</c>

00:05:24.990 --> 00:05:25.000 align:start position:0%
yet implement a certain feature but by
 

00:05:25.000 --> 00:05:27.150 align:start position:0%
yet implement a certain feature but by
accident<00:05:25.210><c> the</c><00:05:25.840><c> stacked</c><00:05:26.080><c> layout</c><00:05:26.350><c> is</c><00:05:26.710><c> correct</c>

00:05:27.150 --> 00:05:27.160 align:start position:0%
accident the stacked layout is correct
 

00:05:27.160 --> 00:05:29.460 align:start position:0%
accident the stacked layout is correct
then<00:05:27.460><c> this</c><00:05:27.820><c> will</c><00:05:28.060><c> need</c><00:05:28.210><c> to</c><00:05:28.450><c> code</c><00:05:29.110><c> that</c><00:05:29.350><c> will</c>

00:05:29.460 --> 00:05:29.470 align:start position:0%
then this will need to code that will
 

00:05:29.470 --> 00:05:31.170 align:start position:0%
then this will need to code that will
actually<00:05:29.770><c> generate</c><00:05:29.860><c> it</c><00:05:30.250><c> and</c><00:05:30.430><c> will</c><00:05:30.910><c> of</c><00:05:31.030><c> course</c>

00:05:31.170 --> 00:05:31.180 align:start position:0%
actually generate it and will of course
 

00:05:31.180 --> 00:05:34.140 align:start position:0%
actually generate it and will of course
do<00:05:31.450><c> something</c><00:05:31.840><c> about</c><00:05:31.930><c> it</c><00:05:32.200><c> in</c><00:05:32.860><c> the</c><00:05:33.160><c> new</c><00:05:33.310><c> code</c>

00:05:34.140 --> 00:05:34.150 align:start position:0%
do something about it in the new code
 

00:05:34.150 --> 00:05:36.750 align:start position:0%
do something about it in the new code
generator<00:05:34.890><c> some</c><00:05:35.890><c> expressions</c><00:05:36.370><c> are</c><00:05:36.490><c> always</c>

00:05:36.750 --> 00:05:36.760 align:start position:0%
generator some expressions are always
 

00:05:36.760 --> 00:05:39.650 align:start position:0%
generator some expressions are always
referenced<00:05:37.240><c> by</c><00:05:37.510><c> their</c><00:05:37.750><c> identifier</c><00:05:38.290><c> and</c><00:05:38.560><c> a</c>

00:05:39.650 --> 00:05:39.660 align:start position:0%
referenced by their identifier and a
 

00:05:39.660 --> 00:05:42.390 align:start position:0%
referenced by their identifier and a
full<00:05:40.660><c> generation</c><00:05:41.080><c> of</c><00:05:41.350><c> that</c><00:05:41.560><c> sub</c><00:05:41.980><c> expressions</c>

00:05:42.390 --> 00:05:42.400 align:start position:0%
full generation of that sub expressions
 

00:05:42.400 --> 00:05:43.800 align:start position:0%
full generation of that sub expressions
are<00:05:42.490><c> implemented</c><00:05:43.000><c> then</c><00:05:43.150><c> the</c><00:05:43.330><c> identifier</c>

00:05:43.800 --> 00:05:43.810 align:start position:0%
are implemented then the identifier
 

00:05:43.810 --> 00:05:45.750 align:start position:0%
are implemented then the identifier
logistics<00:05:44.500><c> is</c><00:05:44.650><c> in</c><00:05:44.860><c> the</c><00:05:45.010><c> universe</c><00:05:45.460><c> an</c>

00:05:45.750 --> 00:05:45.760 align:start position:0%
logistics is in the universe an
 

00:05:45.760 --> 00:05:48.330 align:start position:0%
logistics is in the universe an
additional<00:05:46.720><c> level</c><00:05:47.620><c> of</c><00:05:47.680><c> checks</c><00:05:47.980><c> on</c><00:05:48.250><c> the</c>

00:05:48.330 --> 00:05:48.340 align:start position:0%
additional level of checks on the
 

00:05:48.340 --> 00:05:50.360 align:start position:0%
additional level of checks on the
intermediate<00:05:48.760><c> language</c><00:05:48.880><c> and</c><00:05:49.360><c> this</c><00:05:49.840><c> will</c><00:05:50.020><c> be</c>

00:05:50.360 --> 00:05:50.370 align:start position:0%
intermediate language and this will be
 

00:05:50.370 --> 00:05:57.740 align:start position:0%
intermediate language and this will be
detected<00:05:51.370><c> and</c><00:05:55.140><c> how</c><00:05:56.140><c> can</c><00:05:56.200><c> you</c><00:05:56.410><c> actually</c><00:05:56.590><c> use</c><00:05:56.800><c> it</c>

00:05:57.740 --> 00:05:57.750 align:start position:0%
detected and how can you actually use it
 

00:05:57.750 --> 00:06:00.030 align:start position:0%
detected and how can you actually use it
I'm<00:05:58.750><c> going</c><00:05:58.930><c> to</c><00:05:58.960><c> show</c><00:05:59.200><c> you</c><00:05:59.230><c> how</c><00:05:59.500><c> to</c><00:05:59.560><c> use</c><00:05:59.800><c> it</c><00:05:59.920><c> on</c>

00:06:00.030 --> 00:06:00.040 align:start position:0%
I'm going to show you how to use it on
 

00:06:00.040 --> 00:06:02.540 align:start position:0%
I'm going to show you how to use it on
the<00:06:00.130><c> command</c><00:06:00.430><c> line</c><00:06:00.490><c> the</c><00:06:00.880><c> standard</c><00:06:01.480><c> Chasen</c>

00:06:02.540 --> 00:06:02.550 align:start position:0%
the command line the standard Chasen
 

00:06:02.550 --> 00:06:05.790 align:start position:0%
the command line the standard Chasen
also<00:06:03.550><c> works</c>

00:06:05.790 --> 00:06:05.800 align:start position:0%
also works
 

00:06:05.800 --> 00:06:11.670 align:start position:0%
 
so<00:06:07.440><c> -</c><00:06:08.440><c> my</c><00:06:08.620><c> art</c><00:06:08.860><c> will</c><00:06:09.789><c> generate</c><00:06:10.539><c> you</c><00:06:10.720><c> vote</c><00:06:11.080><c> from</c>

00:06:11.670 --> 00:06:11.680 align:start position:0%
so - my art will generate you vote from
 

00:06:11.680 --> 00:06:16.830 align:start position:0%
so - my art will generate you vote from
facility<00:06:12.310><c> code</c><00:06:12.520><c> and</c><00:06:14.340><c> for</c><00:06:15.340><c> safety</c><00:06:16.030><c> reason</c><00:06:16.479><c> we</c>

00:06:16.830 --> 00:06:16.840 align:start position:0%
facility code and for safety reason we
 

00:06:16.840 --> 00:06:19.369 align:start position:0%
facility code and for safety reason we
do<00:06:17.050><c> not</c><00:06:17.229><c> support</c><00:06:17.590><c> a</c><00:06:17.979><c> direct</c><00:06:18.460><c> translation</c><00:06:18.729><c> from</c>

00:06:19.369 --> 00:06:19.379 align:start position:0%
do not support a direct translation from
 

00:06:19.379 --> 00:06:22.710 align:start position:0%
do not support a direct translation from
civility<00:06:20.379><c> through</c><00:06:20.800><c> you'll</c><00:06:21.009><c> TBM</c><00:06:21.729><c> because</c><00:06:22.539><c> it's</c>

00:06:22.710 --> 00:06:22.720 align:start position:0%
civility through you'll TBM because it's
 

00:06:22.720 --> 00:06:26.520 align:start position:0%
civility through you'll TBM because it's
only<00:06:22.900><c> an</c><00:06:23.199><c> experimental</c><00:06:23.710><c> stage</c><00:06:25.199><c> so</c><00:06:26.199><c> you</c><00:06:26.259><c> have</c>

00:06:26.520 --> 00:06:26.530 align:start position:0%
only an experimental stage so you have
 

00:06:26.530 --> 00:06:30.270 align:start position:0%
only an experimental stage so you have
to<00:06:27.030><c> yeah</c><00:06:28.060><c> copy</c><00:06:28.870><c> the</c><00:06:29.139><c> ultimate</c><00:06:29.560><c> on</c><00:06:29.770><c> the</c><00:06:30.009><c> first</c>

00:06:30.270 --> 00:06:30.280 align:start position:0%
to yeah copy the ultimate on the first
 

00:06:30.280 --> 00:06:33.869 align:start position:0%
to yeah copy the ultimate on the first
stage<00:06:30.729><c> and</c><00:06:31.060><c> then</c><00:06:31.330><c> rerun</c><00:06:32.080><c> the</c><00:06:32.879><c> sudanese</c>

00:06:33.869 --> 00:06:33.879 align:start position:0%
stage and then rerun the sudanese
 

00:06:33.879 --> 00:06:35.909 align:start position:0%
stage and then rerun the sudanese
compiler<00:06:34.270><c> in</c><00:06:34.509><c> assembly</c><00:06:34.960><c> mode</c><00:06:35.139><c> and</c><00:06:35.440><c> then</c>

00:06:35.909 --> 00:06:35.919 align:start position:0%
compiler in assembly mode and then
 

00:06:35.919 --> 00:06:41.909 align:start position:0%
compiler in assembly mode and then
transform<00:06:36.909><c> the</c><00:06:37.120><c> video</c><00:06:37.389><c> recorder</c><00:06:37.900><c> -</c><00:06:40.919><c> yeah</c>

00:06:41.909 --> 00:06:41.919 align:start position:0%
transform the video recorder - yeah
 

00:06:41.919 --> 00:06:47.100 align:start position:0%
transform the video recorder - yeah
that's<00:06:42.099><c> a</c><00:06:42.190><c> gonna</c><00:06:42.370><c> get</c><00:06:42.610><c> how</c><00:06:43.419><c> that</c><00:06:45.990><c> looks</c><00:06:46.990><c> in</c>

00:06:47.100 --> 00:06:47.110 align:start position:0%
that's a gonna get how that looks in
 

00:06:47.110 --> 00:06:49.140 align:start position:0%
that's a gonna get how that looks in
practice<00:06:47.349><c> so</c><00:06:47.710><c> this</c><00:06:47.860><c> is</c><00:06:47.919><c> an</c><00:06:48.370><c> example</c><00:06:48.699><c> years</c><00:06:48.970><c> and</c>

00:06:49.140 --> 00:06:49.150 align:start position:0%
practice so this is an example years and
 

00:06:49.150 --> 00:06:52.649 align:start position:0%
practice so this is an example years and
20<00:06:49.449><c> content</c><00:06:50.020><c> already</c><00:06:50.259><c> a</c><00:06:50.470><c> hard</c><00:06:51.099><c> early</c><00:06:51.539><c> years</c><00:06:52.539><c> in</c>

00:06:52.649 --> 00:06:52.659 align:start position:0%
20 content already a hard early years in
 

00:06:52.659 --> 00:06:56.490 align:start position:0%
20 content already a hard early years in
20<00:06:52.930><c> contract</c><00:06:53.729><c> we</c><00:06:54.729><c> have</c><00:06:54.759><c> an</c><00:06:54.970><c> event</c><00:06:55.240><c> we</c><00:06:56.110><c> have</c><00:06:56.289><c> the</c>

00:06:56.490 --> 00:06:56.500 align:start position:0%
20 contract we have an event we have the
 

00:06:56.500 --> 00:07:01.350 align:start position:0%
20 contract we have an event we have the
mapping<00:06:56.800><c> of</c><00:06:56.889><c> the</c><00:06:56.949><c> balances</c><00:06:57.490><c> to</c><00:06:58.330><c> supply</c><00:06:59.460><c> a</c><00:07:00.460><c> mint</c>

00:07:01.350 --> 00:07:01.360 align:start position:0%
mapping of the balances to supply a mint
 

00:07:01.360 --> 00:07:03.510 align:start position:0%
mapping of the balances to supply a mint
function<00:07:01.840><c> that</c><00:07:01.990><c> generates</c><00:07:02.259><c> tokens</c><00:07:03.009><c> which</c><00:07:03.370><c> is</c>

00:07:03.510 --> 00:07:03.520 align:start position:0%
function that generates tokens which is
 

00:07:03.520 --> 00:07:04.920 align:start position:0%
function that generates tokens which is
conscious<00:07:03.909><c> which</c><00:07:04.300><c> is</c><00:07:04.449><c> called</c><00:07:04.690><c> in</c><00:07:04.840><c> the</c>

00:07:04.920 --> 00:07:04.930 align:start position:0%
conscious which is called in the
 

00:07:04.930 --> 00:07:08.809 align:start position:0%
conscious which is called in the
instructor<00:07:05.379><c> so</c><00:07:05.590><c> center</c><00:07:06.099><c> gets</c><00:07:06.849><c> 20</c><00:07:07.360><c> points</c><00:07:07.719><c> and</c>

00:07:08.809 --> 00:07:08.819 align:start position:0%
instructor so center gets 20 points and
 

00:07:08.819 --> 00:07:11.129 align:start position:0%
instructor so center gets 20 points and
the<00:07:09.819><c> mid</c><00:07:10.000><c> function</c>

00:07:11.129 --> 00:07:11.139 align:start position:0%
the mid function
 

00:07:11.139 --> 00:07:16.260 align:start position:0%
the mid function
this<00:07:11.580><c> required</c><00:07:12.580><c> also</c><00:07:14.490><c> Everest</c><00:07:15.490><c> mint</c><00:07:15.939><c> to</c>

00:07:16.260 --> 00:07:16.270 align:start position:0%
this required also Everest mint to
 

00:07:16.270 --> 00:07:19.020 align:start position:0%
this required also Everest mint to
cannot<00:07:16.960><c> be</c><00:07:17.080><c> the</c><00:07:17.199><c> similarities</c><00:07:17.770><c> and</c><00:07:18.310><c> then</c>

00:07:19.020 --> 00:07:19.030 align:start position:0%
cannot be the similarities and then
 

00:07:19.030 --> 00:07:23.149 align:start position:0%
cannot be the similarities and then
towards<00:07:19.360><c> my</c><00:07:19.599><c> analysis</c><00:07:20.050><c> is</c><00:07:20.259><c> modified</c><00:07:20.770><c> and</c><00:07:21.009><c> the</c>

00:07:23.149 --> 00:07:23.159 align:start position:0%
towards my analysis is modified and the
 

00:07:23.159 --> 00:07:30.119 align:start position:0%
towards my analysis is modified and the
transfer<00:07:24.330><c> event</c><00:07:26.819><c> now</c><00:07:27.819><c> we</c><00:07:28.779><c> compile</c><00:07:29.289><c> that</c><00:07:29.319><c> to</c>

00:07:30.119 --> 00:07:30.129 align:start position:0%
transfer event now we compile that to
 

00:07:30.129 --> 00:07:33.749 align:start position:0%
transfer event now we compile that to
unity<00:07:30.490><c> and</c><00:07:30.960><c> so</c><00:07:31.960><c> this</c><00:07:32.139><c> is</c><00:07:32.289><c> not</c><00:07:32.469><c> the</c><00:07:32.770><c> quote</c>

00:07:33.749 --> 00:07:33.759 align:start position:0%
unity and so this is not the quote
 

00:07:33.759 --> 00:07:35.790 align:start position:0%
unity and so this is not the quote
directly<00:07:34.689><c> generated</c><00:07:35.110><c> particle</c><00:07:35.529><c> generator</c>

00:07:35.790 --> 00:07:35.800 align:start position:0%
directly generated particle generator
 

00:07:35.800 --> 00:07:39.529 align:start position:0%
directly generated particle generator
but<00:07:35.949><c> this</c><00:07:36.069><c> is</c><00:07:36.189><c> the</c><00:07:36.340><c> code</c><00:07:36.520><c> after</c><00:07:36.999><c> optimization</c>

00:07:39.529 --> 00:07:39.539 align:start position:0%
 
 

00:07:39.539 --> 00:07:41.850 align:start position:0%
 
I<00:07:40.539><c> think</c><00:07:41.020><c> it's</c><00:07:41.110><c> really</c><00:07:41.199><c> nice</c><00:07:41.379><c> that</c><00:07:41.439><c> this</c><00:07:41.710><c> is</c>

00:07:41.850 --> 00:07:41.860 align:start position:0%
I think it's really nice that this is
 

00:07:41.860 --> 00:07:50.700 align:start position:0%
I think it's really nice that this is
still<00:07:43.020><c> nice</c><00:07:45.750><c> detail</c><00:07:46.750><c> and</c><00:07:47.710><c> you</c><00:07:47.800><c> will</c><00:07:47.919><c> see</c><00:07:49.710><c> but</c>

00:07:50.700 --> 00:07:50.710 align:start position:0%
still nice detail and you will see but
 

00:07:50.710 --> 00:07:53.820 align:start position:0%
still nice detail and you will see but
you<00:07:51.580><c> see</c><00:07:51.759><c> that</c><00:07:51.909><c> it</c><00:07:52.029><c> still</c><00:07:52.240><c> have</c><00:07:52.830><c> expressions</c>

00:07:53.820 --> 00:07:53.830 align:start position:0%
you see that it still have expressions
 

00:07:53.830 --> 00:07:59.999 align:start position:0%
you see that it still have expressions
and<00:07:57.000><c> yeah</c><00:07:58.000><c> it</c><00:07:58.240><c> so</c><00:07:58.539><c> you</c><00:07:59.199><c> would</c><00:07:59.379><c> even</c><00:07:59.650><c> see</c><00:07:59.830><c> the</c>

00:07:59.999 --> 00:08:00.009 align:start position:0%
and yeah it so you would even see the
 

00:08:00.009 --> 00:08:01.920 align:start position:0%
and yeah it so you would even see the
mid<00:08:00.219><c> function</c><00:08:00.490><c> call</c><00:08:00.939><c> here</c><00:08:00.969><c> and</c><00:08:01.569><c> he</c><00:08:01.779><c> was</c>

00:08:01.920 --> 00:08:01.930 align:start position:0%
mid function call here and he was
 

00:08:01.930 --> 00:08:05.429 align:start position:0%
mid function call here and he was
recognized<00:08:02.560><c> the</c><00:08:03.039><c> name</c><00:08:03.250><c> mint</c><00:08:03.610><c> the</c><00:08:04.330><c> the</c><00:08:05.289><c> issue</c>

00:08:05.429 --> 00:08:05.439 align:start position:0%
recognized the name mint the the issue
 

00:08:05.439 --> 00:08:09.629 align:start position:0%
recognized the name mint the the issue
here<00:08:05.740><c> is</c><00:08:05.830><c> just</c><00:08:06.069><c> that</c><00:08:06.189><c> the</c><00:08:07.050><c> mint</c><00:08:08.400><c> function</c><00:08:09.400><c> in</c>

00:08:09.629 --> 00:08:09.639 align:start position:0%
here is just that the mint function in
 

00:08:09.639 --> 00:08:12.420 align:start position:0%
here is just that the mint function in
the<00:08:09.939><c> init</c><00:08:10.419><c> context</c><00:08:11.050><c> is</c><00:08:11.199><c> only</c><00:08:11.499><c> called</c><00:08:11.889><c> once</c><00:08:12.129><c> and</c>

00:08:12.420 --> 00:08:12.430 align:start position:0%
the init context is only called once and
 

00:08:12.430 --> 00:08:14.820 align:start position:0%
the init context is only called once and
because<00:08:12.759><c> of</c><00:08:12.789><c> that</c><00:08:12.909><c> is</c><00:08:13.210><c> first</c><00:08:13.569><c> in</c><00:08:13.719><c> line</c><00:08:13.960><c> and</c><00:08:14.199><c> so</c>

00:08:14.820 --> 00:08:14.830 align:start position:0%
because of that is first in line and so
 

00:08:14.830 --> 00:08:18.659 align:start position:0%
because of that is first in line and so
the<00:08:14.949><c> function</c><00:08:15.279><c> eternal</c><00:08:15.779><c> but</c><00:08:16.779><c> we</c><00:08:17.409><c> so</c><00:08:17.800><c> it</c><00:08:18.310><c> starts</c>

00:08:18.659 --> 00:08:18.669 align:start position:0%
the function eternal but we so it starts
 

00:08:18.669 --> 00:08:21.300 align:start position:0%
the function eternal but we so it starts
with<00:08:19.349><c> initializing</c><00:08:20.349><c> the</c><00:08:20.500><c> memory</c><00:08:20.919><c> allocator</c>

00:08:21.300 --> 00:08:21.310 align:start position:0%
with initializing the memory allocator
 

00:08:21.310 --> 00:08:25.720 align:start position:0%
with initializing the memory allocator
then<00:08:22.270><c> we</c><00:08:22.810><c> have</c><00:08:22.930><c> the</c><00:08:23.050><c> core</c><00:08:23.229><c> value</c><00:08:23.529><c> checks</c>

00:08:25.720 --> 00:08:25.730 align:start position:0%
then we have the core value checks
 

00:08:25.730 --> 00:08:30.270 align:start position:0%
then we have the core value checks
people<00:08:26.590><c> and</c><00:08:27.590><c> then</c><00:08:27.740><c> the</c><00:08:28.310><c> second</c><00:08:28.610><c> thing</c><00:08:28.730><c> here</c><00:08:29.000><c> is</c>

00:08:30.270 --> 00:08:30.280 align:start position:0%
people and then the second thing here is
 

00:08:30.280 --> 00:08:32.980 align:start position:0%
people and then the second thing here is
required<00:08:31.280><c> that</c><00:08:31.430><c> the</c><00:08:31.610><c> and</c><00:08:32.210><c> as</c><00:08:32.540><c> we</c><00:08:32.660><c> meant</c><00:08:32.840><c> to</c>

00:08:32.980 --> 00:08:32.990 align:start position:0%
required that the and as we meant to
 

00:08:32.990 --> 00:08:38.230 align:start position:0%
required that the and as we meant to
it's<00:08:33.230><c> not</c><00:08:33.380><c> zero</c><00:08:35.350><c> you</c><00:08:36.350><c> actually</c><00:08:36.710><c> see</c><00:08:36.919><c> the</c><00:08:37.240><c> error</c>

00:08:38.230 --> 00:08:38.240 align:start position:0%
it's not zero you actually see the error
 

00:08:38.240 --> 00:08:43.600 align:start position:0%
it's not zero you actually see the error
string<00:08:38.660><c> here</c><00:08:41.590><c> here's</c><00:08:42.590><c> 20</c><00:08:43.040><c> in</c><00:08:43.160><c> minute</c><00:08:43.400><c> to</c><00:08:43.490><c> the</c>

00:08:43.600 --> 00:08:43.610 align:start position:0%
string here here's 20 in minute to the
 

00:08:43.610 --> 00:08:47.470 align:start position:0%
string here here's 20 in minute to the
zero<00:08:43.790><c> edges</c><00:08:44.470><c> so</c><00:08:45.470><c> this</c><00:08:45.650><c> this</c><00:08:46.580><c> block</c><00:08:46.850><c> here</c><00:08:47.210><c> is</c>

00:08:47.470 --> 00:08:47.480 align:start position:0%
zero edges so this this block here is
 

00:08:47.480 --> 00:08:51.130 align:start position:0%
zero edges so this this block here is
the<00:08:47.780><c> require</c><00:08:48.080><c> home</c><00:08:48.410><c> and</c><00:08:48.700><c> then</c><00:08:49.780><c> we</c><00:08:50.780><c> update</c><00:08:50.900><c> the</c>

00:08:51.130 --> 00:08:51.140 align:start position:0%
the require home and then we update the
 

00:08:51.140 --> 00:08:53.500 align:start position:0%
the require home and then we update the
tour<00:08:51.410><c> so</c><00:08:51.590><c> this</c><00:08:52.190><c> this</c><00:08:52.490><c> is</c><00:08:52.640><c> this</c><00:08:52.970><c> is</c><00:08:53.030><c> a</c><00:08:53.150><c> common</c><00:08:53.420><c> I</c>

00:08:53.500 --> 00:08:53.510 align:start position:0%
tour so this this is this is a common I
 

00:08:53.510 --> 00:08:59.080 align:start position:0%
tour so this this is this is a common I
am<00:08:53.630><c> menu</c><00:08:55.450><c> yeah</c><00:08:56.450><c> you</c><00:08:57.160><c> take</c><00:08:58.160><c> the</c><00:08:58.190><c> stuff</c><00:08:58.640><c> that</c><00:08:58.910><c> is</c>

00:08:59.080 --> 00:08:59.090 align:start position:0%
am menu yeah you take the stuff that is
 

00:08:59.090 --> 00:09:00.990 align:start position:0%
am menu yeah you take the stuff that is
take<00:08:59.510><c> the</c><00:08:59.600><c> day</c><00:08:59.720><c> that</c><00:08:59.900><c> is</c><00:09:00.020><c> currently</c><00:09:00.830><c> at</c>

00:09:00.990 --> 00:09:01.000 align:start position:0%
take the day that is currently at
 

00:09:01.000 --> 00:09:06.670 align:start position:0%
take the day that is currently at
storage<00:09:02.000><c> vacation</c><00:09:02.420><c> you</c><00:09:03.230><c> have</c><00:09:03.260><c> 29</c><00:09:04.010><c> useful</c><00:09:05.680><c> now</c>

00:09:06.670 --> 00:09:06.680 align:start position:0%
storage vacation you have 29 useful now
 

00:09:06.680 --> 00:09:11.170 align:start position:0%
storage vacation you have 29 useful now
it<00:09:07.640><c> it</c><00:09:08.360><c> calls</c><00:09:08.720><c> for</c><00:09:09.610><c> the</c><00:09:10.610><c> user-defined</c>

00:09:11.170 --> 00:09:11.180 align:start position:0%
it it calls for the user-defined
 

00:09:11.180 --> 00:09:13.150 align:start position:0%
it it calls for the user-defined
function<00:09:11.540><c> called</c><00:09:11.720><c> check</c><00:09:11.780><c> add</c><00:09:12.170><c> this</c><00:09:12.830><c> is</c><00:09:12.980><c> the</c>

00:09:13.150 --> 00:09:13.160 align:start position:0%
function called check add this is the
 

00:09:13.160 --> 00:09:14.500 align:start position:0%
function called check add this is the
the<00:09:13.460><c> overflow</c><00:09:13.790><c> check</c><00:09:14.000><c> I</c><00:09:14.030><c> was</c><00:09:14.180><c> talking</c><00:09:14.480><c> about</c>

00:09:14.500 --> 00:09:14.510 align:start position:0%
the overflow check I was talking about
 

00:09:14.510 --> 00:09:18.010 align:start position:0%
the overflow check I was talking about
earlier<00:09:14.780><c> and</c><00:09:16.180><c> that</c><00:09:17.180><c> is</c><00:09:17.330><c> one</c><00:09:17.600><c> of</c><00:09:17.630><c> the</c><00:09:17.840><c> two</c>

00:09:18.010 --> 00:09:18.020 align:start position:0%
earlier and that is one of the two
 

00:09:18.020 --> 00:09:20.260 align:start position:0%
earlier and that is one of the two
functions<00:09:18.500><c> that's</c><00:09:18.650><c> not</c><00:09:19.010><c> visible</c><00:09:19.460><c> on</c><00:09:19.880><c> the</c>

00:09:20.260 --> 00:09:20.270 align:start position:0%
functions that's not visible on the
 

00:09:20.270 --> 00:09:22.420 align:start position:0%
functions that's not visible on the
screen<00:09:20.450><c> here</c><00:09:20.930><c> and</c><00:09:21.140><c> the</c><00:09:21.500><c> rest</c><00:09:21.650><c> of</c><00:09:21.860><c> the</c><00:09:22.190><c> rest</c><00:09:22.370><c> of</c>

00:09:22.420 --> 00:09:22.430 align:start position:0%
screen here and the rest of the rest of
 

00:09:22.430 --> 00:09:24.760 align:start position:0%
screen here and the rest of the rest of
the<00:09:22.550><c> coast</c><00:09:22.760><c> all</c><00:09:22.970><c> the</c><00:09:23.080><c> all</c><00:09:24.080><c> there</c><00:09:24.350><c> is</c><00:09:24.530><c> to</c><00:09:24.680><c> the</c>

00:09:24.760 --> 00:09:24.770 align:start position:0%
the coast all the all there is to the
 

00:09:24.770 --> 00:09:27.880 align:start position:0%
the coast all the all there is to the
instructors<00:09:25.390><c> instructor</c><00:09:26.390><c> called</c><00:09:26.570><c> missing</c><00:09:27.320><c> to</c>

00:09:27.880 --> 00:09:27.890 align:start position:0%
instructors instructor called missing to
 

00:09:27.890 --> 00:09:30.850 align:start position:0%
instructors instructor called missing to
school<00:09:28.160><c> functions</c><00:09:28.570><c> and</c><00:09:29.570><c> now</c><00:09:29.840><c> we</c><00:09:30.470><c> update</c><00:09:30.740><c> the</c>

00:09:30.850 --> 00:09:30.860 align:start position:0%
school functions and now we update the
 

00:09:30.860 --> 00:09:33.310 align:start position:0%
school functions and now we update the
balances<00:09:31.310><c> this</c><00:09:32.270><c> is</c><00:09:32.390><c> the</c><00:09:32.540><c> kind</c><00:09:32.990><c> of</c><00:09:33.110><c> problem</c>

00:09:33.310 --> 00:09:33.320 align:start position:0%
balances this is the kind of problem
 

00:09:33.320 --> 00:09:35.369 align:start position:0%
balances this is the kind of problem
there<00:09:34.160><c> is</c><00:09:34.310><c> a</c><00:09:34.340><c> function</c>

00:09:35.369 --> 00:09:35.379 align:start position:0%
there is a function
 

00:09:35.379 --> 00:09:37.979 align:start position:0%
there is a function
access<00:09:35.889><c> team</c><00:09:36.129><c> mapping</c><00:09:36.549><c> and</c><00:09:36.789><c> so</c><00:09:37.359><c> on</c><00:09:37.419><c> it's</c><00:09:37.869><c> a</c>

00:09:37.979 --> 00:09:37.989 align:start position:0%
access team mapping and so on it's a
 

00:09:37.989 --> 00:09:41.400 align:start position:0%
access team mapping and so on it's a
little<00:09:38.319><c> bit</c><00:09:38.410><c> longer</c><00:09:38.619><c> so</c><00:09:40.019><c> the</c><00:09:41.019><c> reason</c><00:09:41.289><c> is</c><00:09:41.379><c> that</c>

00:09:41.400 --> 00:09:41.410 align:start position:0%
little bit longer so the reason is that
 

00:09:41.410 --> 00:09:43.859 align:start position:0%
little bit longer so the reason is that
so<00:09:41.799><c> this</c><00:09:41.919><c> is</c><00:09:41.979><c> the</c><00:09:42.160><c> the</c><00:09:42.639><c> in</c><00:09:42.759><c> x-axis</c><00:09:43.269><c> helper</c>

00:09:43.859 --> 00:09:43.869 align:start position:0%
so this is the the in x-axis helper
 

00:09:43.869 --> 00:09:46.469 align:start position:0%
so this is the the in x-axis helper
function<00:09:44.259><c> for</c><00:09:44.589><c> storage</c><00:09:45.099><c> mappings</c><00:09:45.489><c> and</c><00:09:45.669><c> the</c>

00:09:46.469 --> 00:09:46.479 align:start position:0%
function for storage mappings and the
 

00:09:46.479 --> 00:09:48.389 align:start position:0%
function for storage mappings and the
name<00:09:46.689><c> is</c><00:09:46.869><c> generated</c><00:09:47.319><c> from</c><00:09:47.470><c> the</c><00:09:47.679><c> type</c><00:09:47.889><c> and</c><00:09:48.160><c> I</c>

00:09:48.389 --> 00:09:48.399 align:start position:0%
name is generated from the type and I
 

00:09:48.399 --> 00:09:49.979 align:start position:0%
name is generated from the type and I
think<00:09:48.639><c> we</c><00:09:48.939><c> still</c><00:09:49.329><c> have</c><00:09:49.419><c> to</c><00:09:49.539><c> come</c><00:09:49.779><c> up</c><00:09:49.809><c> with</c><00:09:49.869><c> a</c>

00:09:49.979 --> 00:09:49.989 align:start position:0%
think we still have to come up with a
 

00:09:49.989 --> 00:09:54.239 align:start position:0%
think we still have to come up with a
way<00:09:50.109><c> to</c><00:09:50.139><c> shorten</c><00:09:50.529><c> it</c><00:09:50.649><c> so</c><00:09:50.769><c> it's</c><00:09:50.919><c> very</c><00:09:51.039><c> cool</c><00:09:53.249><c> yeah</c>

00:09:54.239 --> 00:09:54.249 align:start position:0%
way to shorten it so it's very cool yeah
 

00:09:54.249 --> 00:09:57.629 align:start position:0%
way to shorten it so it's very cool yeah
and<00:09:54.429><c> another</c><00:09:54.639><c> issue</c><00:09:54.909><c> here</c><00:09:55.389><c> is</c><00:09:56.279><c> you</c><00:09:57.279><c> see</c><00:09:57.489><c> that</c>

00:09:57.629 --> 00:09:57.639 align:start position:0%
and another issue here is you see that
 

00:09:57.639 --> 00:09:59.819 align:start position:0%
and another issue here is you see that
not<00:09:57.970><c> even</c><00:09:58.119><c> a</c><00:09:58.329><c> success</c><00:09:58.720><c> the</c><00:09:59.199><c> function</c><00:09:59.529><c> was</c><00:09:59.649><c> just</c>

00:09:59.819 --> 00:09:59.829 align:start position:0%
not even a success the function was just
 

00:09:59.829 --> 00:10:01.679 align:start position:0%
not even a success the function was just
talking<00:10:00.069><c> about</c><00:10:00.189><c> it's</c><00:10:00.729><c> called</c><00:10:00.789><c> here</c><00:10:01.209><c> and</c><00:10:01.419><c> it's</c>

00:10:01.679 --> 00:10:01.689 align:start position:0%
talking about it's called here and it's
 

00:10:01.689 --> 00:10:04.079 align:start position:0%
talking about it's called here and it's
also<00:10:01.869><c> called</c><00:10:02.259><c> here</c><00:10:02.649><c> again</c><00:10:03.099><c> with</c><00:10:03.699><c> the</c><00:10:03.849><c> same</c>

00:10:04.079 --> 00:10:04.089 align:start position:0%
also called here again with the same
 

00:10:04.089 --> 00:10:07.409 align:start position:0%
also called here again with the same
parameters<00:10:05.129><c> usually</c><00:10:06.129><c> the</c><00:10:06.339><c> optimizer</c><00:10:06.819><c> is</c><00:10:06.970><c> able</c>

00:10:07.409 --> 00:10:07.419 align:start position:0%
parameters usually the optimizer is able
 

00:10:07.419 --> 00:10:09.359 align:start position:0%
parameters usually the optimizer is able
to<00:10:07.539><c> combine</c><00:10:07.929><c> them</c><00:10:08.229><c> and</c><00:10:08.379><c> call</c><00:10:08.619><c> it</c><00:10:08.709><c> only</c><00:10:08.829><c> once</c>

00:10:09.359 --> 00:10:09.369 align:start position:0%
to combine them and call it only once
 

00:10:09.369 --> 00:10:13.319 align:start position:0%
to combine them and call it only once
the<00:10:09.789><c> problem</c><00:10:10.119><c> here</c><00:10:10.329><c> is</c><00:10:10.539><c> that</c><00:10:11.879><c> it</c><00:10:12.879><c> calls</c><00:10:13.149><c> the</c>

00:10:13.319 --> 00:10:13.329 align:start position:0%
the problem here is that it calls the
 

00:10:13.329 --> 00:10:16.109 align:start position:0%
the problem here is that it calls the
Kaptchuk<00:10:13.629><c> function</c><00:10:14.079><c> which</c><00:10:14.499><c> works</c><00:10:15.489><c> on</c><00:10:15.729><c> memory</c>

00:10:16.109 --> 00:10:16.119 align:start position:0%
Kaptchuk function which works on memory
 

00:10:16.119 --> 00:10:18.089 align:start position:0%
Kaptchuk function which works on memory
because<00:10:16.989><c> of</c><00:10:17.139><c> that</c><00:10:17.259><c> it</c><00:10:17.409><c> has</c><00:10:17.439><c> to</c><00:10:17.769><c> access</c><00:10:17.919><c> the</c>

00:10:18.089 --> 00:10:18.099 align:start position:0%
because of that it has to access the
 

00:10:18.099 --> 00:10:23.849 align:start position:0%
because of that it has to access the
memory<00:10:18.399><c> and</c><00:10:21.599><c> the</c><00:10:22.599><c> optimizer</c><00:10:23.019><c> cannot</c><00:10:23.589><c> yet</c>

00:10:23.849 --> 00:10:23.859 align:start position:0%
memory and the optimizer cannot yet
 

00:10:23.859 --> 00:10:28.379 align:start position:0%
memory and the optimizer cannot yet
recognize<00:10:24.519><c> that</c><00:10:25.769><c> writing</c><00:10:26.769><c> this</c><00:10:27.279><c> stuff</c><00:10:27.669><c> so</c>

00:10:28.379 --> 00:10:28.389 align:start position:0%
recognize that writing this stuff so
 

00:10:28.389 --> 00:10:30.299 align:start position:0%
recognize that writing this stuff so
that<00:10:28.419><c> the</c><00:10:29.349><c> stuff</c><00:10:29.589><c> that</c><00:10:29.769><c> is</c><00:10:29.859><c> written</c><00:10:30.039><c> in</c><00:10:30.220><c> the</c>

00:10:30.299 --> 00:10:30.309 align:start position:0%
that the stuff that is written in the
 

00:10:30.309 --> 00:10:31.829 align:start position:0%
that the stuff that is written in the
first<00:10:30.519><c> call</c><00:10:30.849><c> and</c><00:10:31.179><c> the</c><00:10:31.359><c> stuff</c><00:10:31.599><c> that</c><00:10:31.749><c> was</c>

00:10:31.829 --> 00:10:31.839 align:start position:0%
first call and the stuff that was
 

00:10:31.839 --> 00:10:33.389 align:start position:0%
first call and the stuff that was
written<00:10:31.929><c> said</c><00:10:32.319><c> Paul</c><00:10:32.619><c> did</c><00:10:32.829><c> no</c><00:10:32.979><c> conflict</c>

00:10:33.389 --> 00:10:33.399 align:start position:0%
written said Paul did no conflict
 

00:10:33.399 --> 00:10:35.399 align:start position:0%
written said Paul did no conflict
because<00:10:33.639><c> it</c><00:10:33.759><c> exactly</c><00:10:34.059><c> the</c><00:10:34.179><c> same</c><00:10:34.259><c> so</c><00:10:35.259><c> they</c>

00:10:35.399 --> 00:10:35.409 align:start position:0%
because it exactly the same so they
 

00:10:35.409 --> 00:10:36.179 align:start position:0%
because it exactly the same so they
write<00:10:35.529><c> to</c><00:10:35.589><c> the</c><00:10:35.769><c> same</c><00:10:35.799><c> memory</c><00:10:36.159><c> location</c>

00:10:36.179 --> 00:10:36.189 align:start position:0%
write to the same memory location
 

00:10:36.189 --> 00:10:39.719 align:start position:0%
write to the same memory location
because<00:10:36.849><c> of</c><00:10:36.939><c> that</c><00:10:37.089><c> it</c><00:10:37.359><c> can't</c><00:10:37.629><c> really</c><00:10:38.729><c> swap</c>

00:10:39.719 --> 00:10:39.729 align:start position:0%
because of that it can't really swap
 

00:10:39.729 --> 00:10:42.569 align:start position:0%
because of that it can't really swap
them<00:10:39.970><c> but</c><00:10:40.659><c> it</c><00:10:41.529><c> should</c><00:10:41.769><c> detect</c><00:10:42.069><c> that</c><00:10:42.339><c> it's</c>

00:10:42.569 --> 00:10:42.579 align:start position:0%
them but it should detect that it's
 

00:10:42.579 --> 00:10:49.979 align:start position:0%
them but it should detect that it's
actually<00:10:42.879><c> the</c><00:10:42.970><c> same</c><00:10:43.329><c> step</c><00:10:43.689><c> this</c><00:10:43.869><c> really</c><00:10:48.989><c> yeah</c>

00:10:49.979 --> 00:10:49.989 align:start position:0%
actually the same step this really yeah
 

00:10:49.989 --> 00:10:53.579 align:start position:0%
actually the same step this really yeah
talking<00:10:50.350><c> about</c><00:10:50.559><c> exercise</c><00:10:51.779><c> and</c><00:10:52.779><c> the</c><00:10:53.109><c> truth</c><00:10:53.379><c> you</c>

00:10:53.579 --> 00:10:53.589 align:start position:0%
talking about exercise and the truth you
 

00:10:53.589 --> 00:10:55.060 align:start position:0%
talking about exercise and the truth you
can

00:10:55.060 --> 00:10:55.070 align:start position:0%
can
 

00:10:55.070 --> 00:11:02.590 align:start position:0%
can
this<00:10:55.790><c> is</c><00:10:59.650><c> 256-bit</c><00:11:00.650><c> EVM</c><00:11:01.460><c> code</c><00:11:01.730><c> and</c><00:11:02.000><c> I</c><00:11:02.390><c> think</c>

00:11:02.590 --> 00:11:02.600 align:start position:0%
this is 256-bit EVM code and I think
 

00:11:02.600 --> 00:11:05.560 align:start position:0%
this is 256-bit EVM code and I think
it's<00:11:02.720><c> also</c><00:11:02.930><c> a</c><00:11:03.110><c> lot</c><00:11:03.320><c> more</c><00:11:03.910><c> obviously</c><00:11:04.910><c> 20</c><00:11:05.330><c> then</c>

00:11:05.560 --> 00:11:05.570 align:start position:0%
it's also a lot more obviously 20 then
 

00:11:05.570 --> 00:11:09.010 align:start position:0%
it's also a lot more obviously 20 then
it<00:11:05.900><c> was</c><00:11:06.260><c> a</c><00:11:06.290><c> big</c><00:11:07.280><c> challenge</c><00:11:07.720><c> but</c><00:11:08.720><c> we</c><00:11:08.840><c> can</c>

00:11:09.010 --> 00:11:09.020 align:start position:0%
it was a big challenge but we can
 

00:11:09.020 --> 00:11:11.980 align:start position:0%
it was a big challenge but we can
prepare<00:11:09.350><c> the</c><00:11:10.090><c> compiler</c><00:11:11.090><c> that</c><00:11:11.270><c> goes</c><00:11:11.690><c> why</c><00:11:11.930><c> you</c>

00:11:11.980 --> 00:11:11.990 align:start position:0%
prepare the compiler that goes why you
 

00:11:11.990 --> 00:11:16.870 align:start position:0%
prepare the compiler that goes why you
will<00:11:12.350><c> and</c><00:11:12.500><c> does</c><00:11:13.130><c> not</c><00:11:13.490><c> kill</c><00:11:13.700><c> why</c><00:11:13.880><c> are</c><00:11:13.940><c> you</c><00:11:15.880><c> so</c>

00:11:16.870 --> 00:11:16.880 align:start position:0%
will and does not kill why are you so
 

00:11:16.880 --> 00:11:20.760 align:start position:0%
will and does not kill why are you so
there<00:11:17.500><c> the</c><00:11:18.500><c> particle</c><00:11:18.860><c> politics</c>

00:11:20.760 --> 00:11:20.770 align:start position:0%
there the particle politics
 

00:11:20.770 --> 00:11:25.330 align:start position:0%
there the particle politics
1747<00:11:21.770><c> bytes</c><00:11:23.170><c> that's</c><00:11:24.170><c> been</c><00:11:24.440><c> unfair</c><00:11:24.800><c> because</c><00:11:25.010><c> it</c>

00:11:25.330 --> 00:11:25.340 align:start position:0%
1747 bytes that's been unfair because it
 

00:11:25.340 --> 00:11:27.430 align:start position:0%
1747 bytes that's been unfair because it
doesn't<00:11:25.730><c> alter</c><00:11:25.850><c> como</c><00:11:26.420><c> flow</c><00:11:26.600><c> checks</c><00:11:26.870><c> if</c><00:11:27.110><c> we</c><00:11:27.260><c> add</c>

00:11:27.430 --> 00:11:27.440 align:start position:0%
doesn't alter como flow checks if we add
 

00:11:27.440 --> 00:11:31.480 align:start position:0%
doesn't alter como flow checks if we add
the<00:11:27.590><c> objects</c><00:11:28.220><c> it's</c><00:11:28.460><c> fine</c><00:11:29.420><c> and</c><00:11:30.130><c> if</c><00:11:31.130><c> you</c><00:11:31.190><c> do</c><00:11:31.340><c> that</c>

00:11:31.480 --> 00:11:31.490 align:start position:0%
the objects it's fine and if you do that
 

00:11:31.490 --> 00:11:33.970 align:start position:0%
the objects it's fine and if you do that
why<00:11:31.640><c> it's</c><00:11:32.620><c> 2062</c>

00:11:33.970 --> 00:11:33.980 align:start position:0%
why it's 2062
 

00:11:33.980 --> 00:11:36.790 align:start position:0%
why it's 2062
so<00:11:34.820><c> it</c><00:11:35.120><c> shows</c><00:11:35.330><c> that</c><00:11:35.360><c> are</c><00:11:35.660><c> still</c><00:11:35.990><c> some</c><00:11:36.590><c> work</c><00:11:36.740><c> to</c>

00:11:36.790 --> 00:11:36.800 align:start position:0%
so it shows that are still some work to
 

00:11:36.800 --> 00:11:39.370 align:start position:0%
so it shows that are still some work to
do<00:11:37.100><c> actually</c><00:11:37.760><c> I</c><00:11:37.850><c> did</c><00:11:38.480><c> not</c><00:11:38.690><c> you</c><00:11:38.810><c> find</c><00:11:39.050><c> the</c><00:11:39.230><c> time</c>

00:11:39.370 --> 00:11:39.380 align:start position:0%
do actually I did not you find the time
 

00:11:39.380 --> 00:11:42.730 align:start position:0%
do actually I did not you find the time
to<00:11:39.650><c> see</c><00:11:39.830><c> where</c><00:11:40.310><c> it</c><00:11:40.820><c> has</c><00:11:41.300><c> these</c><00:11:42.230><c> additional</c>

00:11:42.730 --> 00:11:42.740 align:start position:0%
to see where it has these additional
 

00:11:42.740 --> 00:11:49.450 align:start position:0%
to see where it has these additional
bytes<00:11:43.060><c> so</c><00:11:44.060><c> it</c><00:11:44.180><c> might</c><00:11:44.480><c> be</c><00:11:44.540><c> just</c><00:11:44.690><c> amenities</c><00:11:48.430><c> ok</c>

00:11:49.450 --> 00:11:49.460 align:start position:0%
bytes so it might be just amenities ok
 

00:11:49.460 --> 00:11:53.050 align:start position:0%
bytes so it might be just amenities ok
webassembly<00:11:51.250><c> similar</c><00:11:52.250><c> to</c><00:11:52.400><c> assault</c><00:11:52.730><c> see</c><00:11:52.880><c> my</c>

00:11:53.050 --> 00:11:53.060 align:start position:0%
webassembly similar to assault see my
 

00:11:53.060 --> 00:11:55.600 align:start position:0%
webassembly similar to assault see my
expense<00:11:53.390><c> I</c><00:11:53.540><c> already</c><00:11:54.020><c> knew</c><00:11:54.170><c> SSD</c><00:11:54.620><c> -</c><00:11:54.980><c> -</c><00:11:55.250><c> he</c><00:11:55.400><c> wasn't</c>

00:11:55.600 --> 00:11:55.610 align:start position:0%
expense I already knew SSD - - he wasn't
 

00:11:55.610 --> 00:12:00.610 align:start position:0%
expense I already knew SSD - - he wasn't
it<00:11:56.510><c> will</c><00:11:57.020><c> so</c><00:11:57.830><c> and</c><00:11:58.600><c> this</c><00:11:59.600><c> will</c><00:12:00.020><c> actually</c>

00:12:00.610 --> 00:12:00.620 align:start position:0%
it will so and this will actually
 

00:12:00.620 --> 00:12:03.730 align:start position:0%
it will so and this will actually
generate<00:12:01.720><c> he</c><00:12:02.720><c> wasn't</c><00:12:03.110><c> text</c><00:12:03.350><c> representation</c>

00:12:03.730 --> 00:12:03.740 align:start position:0%
generate he wasn't text representation
 

00:12:03.740 --> 00:12:09.640 align:start position:0%
generate he wasn't text representation
in<00:12:04.220><c> one</c><00:12:04.430><c> run</c><00:12:07.090><c> thing</c><00:12:08.090><c> is</c><00:12:08.240><c> it's</c><00:12:08.480><c> not</c><00:12:09.170><c> tested</c><00:12:09.560><c> at</c>

00:12:09.640 --> 00:12:09.650 align:start position:0%
in one run thing is it's not tested at
 

00:12:09.650 --> 00:12:15.310 align:start position:0%
in one run thing is it's not tested at
all<00:12:12.940><c> it's</c><00:12:13.940><c> not</c><00:12:14.060><c> tested</c><00:12:14.390><c> you</c><00:12:14.630><c> know</c><00:12:14.690><c> because</c><00:12:15.170><c> we</c>

00:12:15.310 --> 00:12:15.320 align:start position:0%
all it's not tested you know because we
 

00:12:15.320 --> 00:12:20.560 align:start position:0%
all it's not tested you know because we
couldn't<00:12:15.770><c> get</c><00:12:15.950><c> find</c><00:12:19.060><c> execution</c><00:12:20.060><c> environment</c>

00:12:20.560 --> 00:12:20.570 align:start position:0%
couldn't get find execution environment
 

00:12:20.570 --> 00:12:25.030 align:start position:0%
couldn't get find execution environment
we<00:12:20.750><c> can</c><00:12:23.080><c> Callaghan</c><00:12:24.080><c> took</c><00:12:24.200><c> my</c><00:12:24.320><c> contracts</c><00:12:24.890><c> and</c>

00:12:25.030 --> 00:12:25.040 align:start position:0%
we can Callaghan took my contracts and
 

00:12:25.040 --> 00:12:28.870 align:start position:0%
we can Callaghan took my contracts and
the<00:12:25.100><c> reason</c><00:12:25.370><c> for</c><00:12:25.400><c> that</c><00:12:25.550><c> is</c><00:12:25.880><c> that</c><00:12:26.150><c> we</c>

00:12:28.870 --> 00:12:28.880 align:start position:0%
 
 

00:12:28.880 --> 00:12:30.860 align:start position:0%
 
transform<00:12:29.970><c> web-centric</c><00:12:30.420><c> text</c>

00:12:30.860 --> 00:12:30.870 align:start position:0%
transform web-centric text
 

00:12:30.870 --> 00:12:32.600 align:start position:0%
transform web-centric text
representation<00:12:31.170><c> tumor</c><00:12:31.829><c> center</c><00:12:32.160><c> by</c><00:12:32.550><c> the</c>

00:12:32.600 --> 00:12:32.610 align:start position:0%
representation tumor center by the
 

00:12:32.610 --> 00:12:34.759 align:start position:0%
representation tumor center by the
representation<00:12:33.149><c> and</c><00:12:33.750><c> you</c><00:12:34.050><c> need</c><00:12:34.290><c> that</c><00:12:34.529><c> for</c>

00:12:34.759 --> 00:12:34.769 align:start position:0%
representation and you need that for
 

00:12:34.769 --> 00:12:36.829 align:start position:0%
representation and you need that for
deploying<00:12:35.640><c> the</c><00:12:35.820><c> fraction</c><00:12:36.269><c> deploying</c><00:12:36.660><c> the</c>

00:12:36.829 --> 00:12:36.839 align:start position:0%
deploying the fraction deploying the
 

00:12:36.839 --> 00:12:38.870 align:start position:0%
deploying the fraction deploying the
contract<00:12:37.260><c> smooth</c><00:12:37.649><c> because</c><00:12:38.430><c> it</c><00:12:38.610><c> means</c><00:12:38.760><c> the</c>

00:12:38.870 --> 00:12:38.880 align:start position:0%
contract smooth because it means the
 

00:12:38.880 --> 00:12:41.370 align:start position:0%
contract smooth because it means the
return<00:12:39.000><c> of</c><00:12:39.240><c> ivory</c>

00:12:41.370 --> 00:12:41.380 align:start position:0%
return of ivory
 

00:12:41.380 --> 00:12:49.530 align:start position:0%
return of ivory
I'm<00:12:43.380><c> representation</c><00:12:47.100><c> how</c><00:12:48.100><c> does</c><00:12:48.250><c> the</c><00:12:48.540><c> compiler</c>

00:12:49.530 --> 00:12:49.540 align:start position:0%
I'm representation how does the compiler
 

00:12:49.540 --> 00:12:56.370 align:start position:0%
I'm representation how does the compiler
-<00:12:50.140><c> II</c><00:12:50.170><c> wasn't</c><00:12:50.500><c> work</c><00:12:54.240><c> it</c><00:12:55.240><c> takes</c><00:12:55.510><c> the</c><00:12:55.840><c> regular</c>

00:12:56.370 --> 00:12:56.380 align:start position:0%
- II wasn't work it takes the regular
 

00:12:56.380 --> 00:12:58.410 align:start position:0%
- II wasn't work it takes the regular
IBM<00:12:56.860><c> you</c><00:12:56.980><c> know</c><00:12:57.040><c> so</c><00:12:57.430><c> it</c><00:12:57.520><c> starts</c><00:12:57.790><c> exactly</c><00:12:58.000><c> at</c><00:12:58.240><c> the</c>

00:12:58.410 --> 00:12:58.420 align:start position:0%
IBM you know so it starts exactly at the
 

00:12:58.420 --> 00:13:03.920 align:start position:0%
IBM you know so it starts exactly at the
point<00:12:58.990><c> where</c><00:12:59.230><c> the</c><00:13:00.300><c> civility</c><00:13:01.300><c> to</c><00:13:01.830><c> usually</c><00:13:02.830><c> be</c><00:13:02.950><c> a</c>

00:13:03.920 --> 00:13:03.930 align:start position:0%
point where the civility to usually be a
 

00:13:03.930 --> 00:13:11.430 align:start position:0%
point where the civility to usually be a
provider<00:13:07.050><c> went</c><00:13:08.050><c> and</c><00:13:09.690><c> so</c><00:13:10.690><c> you</c><00:13:10.750><c> have</c><00:13:10.990><c> to</c><00:13:11.140><c> you</c>

00:13:11.430 --> 00:13:11.440 align:start position:0%
provider went and so you have to you
 

00:13:11.440 --> 00:13:15.120 align:start position:0%
provider went and so you have to you
have<00:13:11.500><c> to</c><00:13:11.620><c> transform</c><00:13:12.120><c> 256</c><00:13:13.170><c> bit</c><00:13:14.170><c> code</c><00:13:14.410><c> to</c><00:13:14.590><c> 64-bit</c>

00:13:15.120 --> 00:13:15.130 align:start position:0%
have to transform 256 bit code to 64-bit
 

00:13:15.130 --> 00:13:17.370 align:start position:0%
have to transform 256 bit code to 64-bit
code<00:13:15.430><c> and</c><00:13:15.700><c> this</c><00:13:16.270><c> is</c><00:13:16.330><c> that</c><00:13:16.570><c> by</c><00:13:16.720><c> splitting</c><00:13:17.140><c> all</c>

00:13:17.370 --> 00:13:17.380 align:start position:0%
code and this is that by splitting all
 

00:13:17.380 --> 00:13:19.290 align:start position:0%
code and this is that by splitting all
the<00:13:17.530><c> you'll</c><00:13:17.680><c> variables</c><00:13:18.220><c> into</c><00:13:18.550><c> four</c><00:13:18.910><c> modules</c>

00:13:19.290 --> 00:13:19.300 align:start position:0%
the you'll variables into four modules
 

00:13:19.300 --> 00:13:26.490 align:start position:0%
the you'll variables into four modules
and<00:13:21.900><c> at</c><00:13:22.900><c> that</c><00:13:23.080><c> point</c><00:13:23.290><c> we</c><00:13:23.680><c> have</c><00:13:23.860><c> some</c><00:13:25.080><c> kind</c><00:13:26.080><c> of</c><00:13:26.170><c> a</c>

00:13:26.490 --> 00:13:26.500 align:start position:0%
and at that point we have some kind of a
 

00:13:26.500 --> 00:13:30.840 align:start position:0%
and at that point we have some kind of a
mix<00:13:27.100><c> of</c><00:13:27.510><c> web</c><00:13:28.510><c> assembly</c>

00:13:30.840 --> 00:13:30.850 align:start position:0%
mix of web assembly
 

00:13:30.850 --> 00:13:34.329 align:start position:0%
mix of web assembly
because<00:13:31.850><c> we</c><00:13:32.029><c> still</c><00:13:32.209><c> use</c><00:13:32.420><c> the</c><00:13:32.600><c> EBM</c><00:13:32.959><c> opcodes</c><00:13:33.709><c> but</c>

00:13:34.329 --> 00:13:34.339 align:start position:0%
because we still use the EBM opcodes but
 

00:13:34.339 --> 00:13:38.110 align:start position:0%
because we still use the EBM opcodes but
we<00:13:34.550><c> already</c><00:13:34.820><c> use</c><00:13:35.149><c> 64-bit</c><00:13:35.750><c> variables</c><00:13:36.350><c> and</c><00:13:37.120><c> then</c>

00:13:38.110 --> 00:13:38.120 align:start position:0%
we already use 64-bit variables and then
 

00:13:38.120 --> 00:13:43.540 align:start position:0%
we already use 64-bit variables and then
we<00:13:38.420><c> add</c><00:13:40.360><c> kind</c><00:13:41.360><c> of</c><00:13:41.420><c> a</c><00:13:41.540><c> library</c><00:13:42.080><c> code</c><00:13:42.800><c> that</c>

00:13:43.540 --> 00:13:43.550 align:start position:0%
we add kind of a library code that
 

00:13:43.550 --> 00:13:46.000 align:start position:0%
we add kind of a library code that
implements<00:13:44.000><c> all</c><00:13:44.360><c> EVM</c><00:13:45.320><c> opcodes</c>

00:13:46.000 --> 00:13:46.010 align:start position:0%
implements all EVM opcodes
 

00:13:46.010 --> 00:13:48.190 align:start position:0%
implements all EVM opcodes
has<00:13:46.130><c> used</c><00:13:46.700><c> different</c><00:13:46.880><c> functions</c><00:13:47.540><c> using</c><00:13:48.140><c> the</c>

00:13:48.190 --> 00:13:48.200 align:start position:0%
has used different functions using the
 

00:13:48.200 --> 00:13:49.530 align:start position:0%
has used different functions using the
EVM

00:13:49.530 --> 00:13:49.540 align:start position:0%
EVM
 

00:13:49.540 --> 00:13:54.820 align:start position:0%
EVM
LED<00:13:50.540><c> wasn't</c><00:13:51.260><c> within</c><00:13:51.800><c> functions</c><00:13:52.270><c> and</c><00:13:53.680><c> at</c><00:13:54.680><c> that</c>

00:13:54.820 --> 00:13:54.830 align:start position:0%
LED wasn't within functions and at that
 

00:13:54.830 --> 00:14:00.970 align:start position:0%
LED wasn't within functions and at that
point<00:13:54.980><c> we</c><00:13:55.220><c> have</c><00:13:57.820><c> it</c><00:13:58.820><c> wasn't</c><00:13:59.209><c> favorable</c><00:13:59.839><c> and</c><00:14:00.020><c> we</c>

00:14:00.970 --> 00:14:00.980 align:start position:0%
point we have it wasn't favorable and we
 

00:14:00.980 --> 00:14:03.130 align:start position:0%
point we have it wasn't favorable and we
run<00:14:01.250><c> the</c><00:14:01.700><c> regular</c><00:14:02.089><c> optimizer</c><00:14:02.510><c> will</c><00:14:02.750><c> also</c><00:14:02.990><c> have</c>

00:14:03.130 --> 00:14:03.140 align:start position:0%
run the regular optimizer will also have
 

00:14:03.140 --> 00:14:05.320 align:start position:0%
run the regular optimizer will also have
an<00:14:03.260><c> EVM</c><00:14:03.680><c> you</c><00:14:03.830><c> with</c><00:14:04.190><c> slight</c><00:14:04.580><c> modifications</c>

00:14:05.320 --> 00:14:05.330 align:start position:0%
an EVM you with slight modifications
 

00:14:05.330 --> 00:14:08.519 align:start position:0%
an EVM you with slight modifications
because<00:14:06.170><c> we</c><00:14:06.410><c> have</c><00:14:06.529><c> different</c><00:14:06.620><c> approaches</c><00:14:07.279><c> and</c>

00:14:08.519 --> 00:14:08.529 align:start position:0%
because we have different approaches and
 

00:14:08.529 --> 00:14:11.290 align:start position:0%
because we have different approaches and
yeah<00:14:09.529><c> it</c><00:14:09.589><c> turns</c><00:14:09.800><c> out</c><00:14:09.950><c> that</c><00:14:10.100><c> we</c><00:14:10.279><c> are</c><00:14:10.610><c> able</c><00:14:11.180><c> to</c>

00:14:11.290 --> 00:14:11.300 align:start position:0%
yeah it turns out that we are able to
 

00:14:11.300 --> 00:14:13.780 align:start position:0%
yeah it turns out that we are able to
reuse<00:14:11.800><c> almost</c><00:14:12.800><c> all</c><00:14:13.010><c> of</c><00:14:13.040><c> the</c><00:14:13.190><c> proponents</c><00:14:13.670><c> of</c>

00:14:13.780 --> 00:14:13.790 align:start position:0%
reuse almost all of the proponents of
 

00:14:13.790 --> 00:14:20.079 align:start position:0%
reuse almost all of the proponents of
the<00:14:14.170><c> PM's</c><00:14:15.170><c> you</c><00:14:15.320><c> will</c><00:14:15.529><c> optimizer</c><00:14:18.760><c> yeah</c><00:14:19.760><c> in</c>

00:14:20.079 --> 00:14:20.089 align:start position:0%
the PM's you will optimizer yeah in
 

00:14:20.089 --> 00:14:22.410 align:start position:0%
the PM's you will optimizer yeah in
terrorist<00:14:20.420><c> academy</c><00:14:21.350><c> yeah</c><00:14:22.160><c> pretty</c>

00:14:22.410 --> 00:14:22.420 align:start position:0%
terrorist academy yeah pretty
 

00:14:22.420 --> 00:14:24.070 align:start position:0%
terrorist academy yeah pretty
straightforward<00:14:23.420><c> transformation</c>

00:14:24.070 --> 00:14:24.080 align:start position:0%
straightforward transformation
 

00:14:24.080 --> 00:14:25.920 align:start position:0%
straightforward transformation
everything

00:14:25.920 --> 00:14:25.930 align:start position:0%
everything
 

00:14:25.930 --> 00:14:27.850 align:start position:0%
everything
yeah<00:14:26.930><c> that's</c><00:14:27.110><c> secretive</c><00:14:27.380><c> that</c><00:14:27.440><c> is</c><00:14:27.560><c> specific</c>

00:14:27.850 --> 00:14:27.860 align:start position:0%
yeah that's secretive that is specific
 

00:14:27.860 --> 00:14:32.230 align:start position:0%
yeah that's secretive that is specific
some<00:14:28.040><c> example</c><00:14:29.680><c> we</c><00:14:30.680><c> just</c><00:14:30.920><c> use</c><00:14:31.250><c> we</c><00:14:31.820><c> just</c><00:14:32.029><c> store</c>

00:14:32.230 --> 00:14:32.240 align:start position:0%
some example we just use we just store
 

00:14:32.240 --> 00:14:35.199 align:start position:0%
some example we just use we just store
the<00:14:32.570><c> current</c><00:14:33.080><c> block</c><00:14:33.800><c> element</c><00:14:34.370><c> at</c><00:14:34.550><c> position</c>

00:14:35.199 --> 00:14:35.209 align:start position:0%
the current block element at position
 

00:14:35.209 --> 00:14:39.970 align:start position:0%
the current block element at position
zero<00:14:35.660><c> in</c><00:14:35.750><c> memory</c><00:14:36.700><c> this</c><00:14:37.990><c> yeah</c><00:14:38.990><c> I</c><00:14:39.290><c> have</c><00:14:39.649><c> to</c><00:14:39.770><c> warn</c>

00:14:39.970 --> 00:14:39.980 align:start position:0%
zero in memory this yeah I have to warn
 

00:14:39.980 --> 00:14:42.970 align:start position:0%
zero in memory this yeah I have to warn
you<00:14:40.040><c> because</c><00:14:40.250><c> of</c><00:14:40.550><c> those</c><00:14:40.899><c> 256</c><00:14:41.899><c> bits</c><00:14:42.110><c> 64-bit</c>

00:14:42.970 --> 00:14:42.980 align:start position:0%
you because of those 256 bits 64-bit
 

00:14:42.980 --> 00:14:47.470 align:start position:0%
you because of those 256 bits 64-bit
thing<00:14:43.640><c> this</c><00:14:44.000><c> will</c><00:14:44.209><c> be</c><00:14:44.810><c> complicated</c><00:14:46.270><c> okay</c>

00:14:47.470 --> 00:14:47.480 align:start position:0%
thing this will be complicated okay
 

00:14:47.480 --> 00:14:50.319 align:start position:0%
thing this will be complicated okay
what<00:14:47.720><c> we</c><00:14:47.839><c> do</c><00:14:47.959><c> is</c><00:14:48.339><c> guesstimate</c><00:14:49.339><c> returns</c><00:14:49.700><c> a</c><00:14:49.820><c> 256</c>

00:14:50.319 --> 00:14:50.329 align:start position:0%
what we do is guesstimate returns a 256
 

00:14:50.329 --> 00:14:52.480 align:start position:0%
what we do is guesstimate returns a 256
bit<00:14:50.420><c> value</c><00:14:51.230><c> so</c><00:14:51.770><c> we</c><00:14:51.860><c> have</c><00:14:51.950><c> to</c><00:14:52.010><c> split</c><00:14:52.160><c> that</c><00:14:52.279><c> into</c>

00:14:52.480 --> 00:14:52.490 align:start position:0%
bit value so we have to split that into
 

00:14:52.490 --> 00:14:55.300 align:start position:0%
bit value so we have to split that into
four<00:14:52.730><c> variables</c>

00:14:55.300 --> 00:14:55.310 align:start position:0%
 
 

00:14:55.310 --> 00:14:57.070 align:start position:0%
 
that's<00:14:55.760><c> what</c><00:14:56.510><c> is</c><00:14:56.600><c> done</c><00:14:56.780><c> here</c><00:14:56.810><c> in</c><00:14:57.020><c> the</c>

00:14:57.070 --> 00:14:57.080 align:start position:0%
that's what is done here in the
 

00:14:57.080 --> 00:14:58.810 align:start position:0%
that's what is done here in the
beginning<00:14:57.440><c> so</c><00:14:57.650><c> we</c><00:14:57.860><c> call</c><00:14:58.220><c> guesstimate</c><00:14:58.640><c> and</c>

00:14:58.810 --> 00:14:58.820 align:start position:0%
beginning so we call guesstimate and
 

00:14:58.820 --> 00:15:01.600 align:start position:0%
beginning so we call guesstimate and
selected<00:14:59.450><c> for</c><00:14:59.600><c> variables</c><00:15:00.290><c> and</c><00:15:00.500><c> then</c><00:15:01.100><c> we</c><00:15:01.130><c> for</c><00:15:01.430><c> M</c>

00:15:01.600 --> 00:15:01.610 align:start position:0%
selected for variables and then we for M
 

00:15:01.610 --> 00:15:04.530 align:start position:0%
selected for variables and then we for M
store<00:15:01.910><c> that</c><00:15:02.150><c> may</c><00:15:02.330><c> be</c><00:15:02.390><c> kind</c><00:15:02.930><c> of</c><00:15:03.020><c> sweet</c><00:15:03.650><c> new</c>

00:15:04.530 --> 00:15:04.540 align:start position:0%
store that may be kind of sweet new
 

00:15:04.540 --> 00:15:08.470 align:start position:0%
store that may be kind of sweet new
hybrid<00:15:05.540><c> EVM</c><00:15:05.990><c> it</c><00:15:06.230><c> was</c><00:15:06.440><c> new</c><00:15:07.450><c> function</c><00:15:08.450><c> that</c>

00:15:08.470 --> 00:15:08.480 align:start position:0%
hybrid EVM it was new function that
 

00:15:08.480 --> 00:15:10.450 align:start position:0%
hybrid EVM it was new function that
takes<00:15:08.840><c> eight</c><00:15:09.110><c> parameters</c><00:15:09.350><c> with</c><00:15:09.950><c> one</c><00:15:10.160><c> for</c><00:15:10.370><c> the</c>

00:15:10.450 --> 00:15:10.460 align:start position:0%
takes eight parameters with one for the
 

00:15:10.460 --> 00:15:14.110 align:start position:0%
takes eight parameters with one for the
address<00:15:11.450><c> and</c><00:15:11.630><c> proper</c><00:15:11.960><c> value</c><00:15:12.320><c> and</c><00:15:13.090><c> then</c><00:15:14.090><c> we</c>

00:15:14.110 --> 00:15:14.120 align:start position:0%
address and proper value and then we
 

00:15:14.120 --> 00:15:17.980 align:start position:0%
address and proper value and then we
have<00:15:14.690><c> the</c><00:15:16.150><c> implementations</c><00:15:17.150><c> of</c><00:15:17.360><c> the</c><00:15:17.600><c> idiom</c><00:15:17.900><c> of</c>

00:15:17.980 --> 00:15:17.990 align:start position:0%
have the implementations of the idiom of
 

00:15:17.990 --> 00:15:21.460 align:start position:0%
have the implementations of the idiom of
codes<00:15:18.260><c> in</c><00:15:19.210><c> some</c><00:15:20.210><c> built-ins</c><00:15:20.720><c> of</c><00:15:21.020><c> gasoline</c><00:15:21.350><c> for</c>

00:15:21.460 --> 00:15:21.470 align:start position:0%
codes in some built-ins of gasoline for
 

00:15:21.470 --> 00:15:24.250 align:start position:0%
codes in some built-ins of gasoline for
example<00:15:21.920><c> just</c><00:15:22.010><c> cause</c><00:15:22.280><c> you</c><00:15:23.030><c> don't</c><00:15:23.360><c> get</c><00:15:23.600><c> of</c>

00:15:24.250 --> 00:15:24.260 align:start position:0%
example just cause you don't get of
 

00:15:24.260 --> 00:15:28.060 align:start position:0%
example just cause you don't get of
Testament<00:15:24.940><c> and</c><00:15:25.940><c> an</c><00:15:26.090><c> M</c><00:15:26.270><c> store</c><00:15:26.570><c> our</c><00:15:27.440><c> wheat</c><00:15:27.620><c> for</c>

00:15:28.060 --> 00:15:28.070 align:start position:0%
Testament and an M store our wheat for
 

00:15:28.070 --> 00:15:31.690 align:start position:0%
Testament and an M store our wheat for
minion<00:15:28.460><c> swapping</c><00:15:28.910><c> because</c><00:15:30.190><c> what</c><00:15:31.190><c> assembly</c><00:15:31.580><c> is</c>

00:15:31.690 --> 00:15:31.700 align:start position:0%
minion swapping because what assembly is
 

00:15:31.700 --> 00:15:38.740 align:start position:0%
minion swapping because what assembly is
a<00:15:32.000><c> machine</c><00:15:35.260><c> is</c><00:15:36.260><c> not</c><00:15:36.410><c> very</c><00:15:36.620><c> complicated</c><00:15:36.890><c> but</c><00:15:37.750><c> if</c>

00:15:38.740 --> 00:15:38.750 align:start position:0%
a machine is not very complicated but if
 

00:15:38.750 --> 00:15:40.900 align:start position:0%
a machine is not very complicated but if
you<00:15:38.840><c> apply</c><00:15:39.080><c> the</c><00:15:39.140><c> optimizer</c><00:15:39.710><c> then</c><00:15:40.550><c> it</c><00:15:40.700><c> will</c><00:15:40.820><c> of</c>

00:15:40.900 --> 00:15:40.910 align:start position:0%
you apply the optimizer then it will of
 

00:15:40.910 --> 00:15:42.370 align:start position:0%
you apply the optimizer then it will of
course<00:15:40.940><c> in</c><00:15:41.390><c> line</c><00:15:41.570><c> the</c><00:15:41.780><c> guess</c><00:15:41.930><c> that</c><00:15:42.110><c> we</c><00:15:42.200><c> call</c>

00:15:42.370 --> 00:15:42.380 align:start position:0%
course in line the guess that we call
 

00:15:42.380 --> 00:15:45.580 align:start position:0%
course in line the guess that we call
here<00:15:42.680><c> and</c><00:15:43.690><c> also</c><00:15:44.690><c> remove</c><00:15:45.050><c> all</c><00:15:45.290><c> the</c><00:15:45.470><c> other</c>

00:15:45.580 --> 00:15:45.590 align:start position:0%
here and also remove all the other
 

00:15:45.590 --> 00:15:49.500 align:start position:0%
here and also remove all the other
varieties<00:15:46.370><c> we</c><00:15:46.460><c> don't</c><00:15:46.610><c> get</c><00:15:46.730><c> anymore</c>

00:15:49.500 --> 00:15:49.510 align:start position:0%
 
 

00:15:49.510 --> 00:15:51.910 align:start position:0%
 
also<00:15:50.510><c> the</c><00:15:50.630><c> M</c><00:15:50.750><c> store</c><00:15:51.080><c> it</c><00:15:51.320><c> has</c><00:15:51.470><c> all</c><00:15:51.770><c> the</c>

00:15:51.910 --> 00:15:51.920 align:start position:0%
also the M store it has all the
 

00:15:51.920 --> 00:15:54.070 align:start position:0%
also the M store it has all the
constants<00:15:52.460><c> here</c><00:15:52.640><c> so</c><00:15:52.970><c> it's</c><00:15:53.240><c> probably</c><00:15:53.960><c> make</c>

00:15:54.070 --> 00:15:54.080 align:start position:0%
constants here so it's probably make
 

00:15:54.080 --> 00:15:56.590 align:start position:0%
constants here so it's probably make
sense<00:15:54.260><c> and</c><00:15:54.740><c> then</c><00:15:55.070><c> and</c>

00:15:56.590 --> 00:15:56.600 align:start position:0%
sense and then and
 

00:15:56.600 --> 00:16:07.270 align:start position:0%
sense and then and
like<00:15:56.900><c> this</c><00:15:58.930><c> only</c><00:15:59.930><c> the</c><00:16:00.050><c> engines</c><00:16:00.380><c> watches</c>

00:16:07.270 --> 00:16:07.280 align:start position:0%
 
 

00:16:07.280 --> 00:16:10.000 align:start position:0%
 
okay<00:16:07.820><c> now</c><00:16:08.510><c> the</c><00:16:08.570><c> three</c><00:16:08.780><c> tarts</c><00:16:09.110><c> third</c><00:16:09.590><c> part</c><00:16:09.920><c> of</c>

00:16:10.000 --> 00:16:10.010 align:start position:0%
okay now the three tarts third part of
 

00:16:10.010 --> 00:16:16.780 align:start position:0%
okay now the three tarts third part of
the<00:16:10.130><c> talk</c><00:16:10.370><c> the</c><00:16:10.930><c> original</c><00:16:11.930><c> optimizer</c><00:16:14.710><c> all</c><00:16:15.790><c> all</c>

00:16:16.780 --> 00:16:16.790 align:start position:0%
the talk the original optimizer all all
 

00:16:16.790 --> 00:16:19.150 align:start position:0%
the talk the original optimizer all all
components<00:16:17.210><c> of</c><00:16:17.510><c> the</c><00:16:17.630><c> optimizer</c><00:16:18.050><c> take</c><00:16:18.980><c> your</c>

00:16:19.150 --> 00:16:19.160 align:start position:0%
components of the optimizer take your
 

00:16:19.160 --> 00:16:19.930 align:start position:0%
components of the optimizer take your
coat

00:16:19.930 --> 00:16:19.940 align:start position:0%
coat
 

00:16:19.940 --> 00:16:22.090 align:start position:0%
coat
transform<00:16:20.750><c> it</c><00:16:20.840><c> and</c><00:16:20.990><c> I'll</c><00:16:21.080><c> put</c><00:16:21.290><c> you</c><00:16:21.380><c> in</c><00:16:21.410><c> yes</c><00:16:21.860><c> sir</c>

00:16:22.090 --> 00:16:22.100 align:start position:0%
transform it and I'll put you in yes sir
 

00:16:22.100 --> 00:16:33.100 align:start position:0%
transform it and I'll put you in yes sir
it's<00:16:27.790><c> so</c><00:16:28.790><c> all</c><00:16:29.450><c> the</c><00:16:30.140><c> motives</c><00:16:30.980><c> are</c><00:16:31.960><c> simple</c><00:16:32.960><c> that</c>

00:16:33.100 --> 00:16:33.110 align:start position:0%
it's so all the motives are simple that
 

00:16:33.110 --> 00:16:35.820 align:start position:0%
it's so all the motives are simple that
can<00:16:33.350><c> be</c><00:16:33.470><c> combined</c><00:16:33.920><c> in</c><00:16:34.070><c> an</c><00:16:34.160><c> arbitrary</c><00:16:34.550><c> rating</c>

00:16:35.820 --> 00:16:35.830 align:start position:0%
can be combined in an arbitrary rating
 

00:16:35.830 --> 00:16:39.580 align:start position:0%
can be combined in an arbitrary rating
if<00:16:36.830><c> all</c><00:16:37.100><c> the</c><00:16:37.340><c> modules</c><00:16:38.210><c> are</c><00:16:38.600><c> correct</c><00:16:38.900><c> and</c><00:16:39.230><c> the</c>

00:16:39.580 --> 00:16:39.590 align:start position:0%
if all the modules are correct and the
 

00:16:39.590 --> 00:16:43.960 align:start position:0%
if all the modules are correct and the
Veloster<00:16:41.830><c> it</c><00:16:42.830><c> turned</c><00:16:43.190><c> out</c><00:16:43.310><c> that</c><00:16:43.370><c> we</c><00:16:43.640><c> need</c><00:16:43.940><c> a</c>

00:16:43.960 --> 00:16:43.970 align:start position:0%
Veloster it turned out that we need a
 

00:16:43.970 --> 00:16:46.480 align:start position:0%
Veloster it turned out that we need a
little<00:16:44.180><c> bit</c><00:16:44.330><c> more</c><00:16:45.050><c> notice</c><00:16:46.010><c> that</c><00:16:46.190><c> we</c><00:16:46.310><c> initially</c>

00:16:46.480 --> 00:16:46.490 align:start position:0%
little bit more notice that we initially
 

00:16:46.490 --> 00:16:49.900 align:start position:0%
little bit more notice that we initially
thought<00:16:46.700><c> we</c><00:16:47.060><c> currently</c><00:16:47.210><c> have</c><00:16:47.450><c> roughly</c><00:16:47.960><c> 25</c><00:16:48.910><c> but</c>

00:16:49.900 --> 00:16:49.910 align:start position:0%
thought we currently have roughly 25 but
 

00:16:49.910 --> 00:16:53.970 align:start position:0%
thought we currently have roughly 25 but
most<00:16:50.240><c> of</c><00:16:50.420><c> the</c><00:16:50.540><c> motives</c><00:16:50.870><c> are</c><00:16:51.020><c> really</c><00:16:51.410><c> tiny</c><00:16:51.680><c> and</c>

00:16:53.970 --> 00:16:53.980 align:start position:0%
most of the motives are really tiny and
 

00:16:53.980 --> 00:16:57.040 align:start position:0%
most of the motives are really tiny and
there<00:16:54.980><c> are</c><00:16:55.190><c> only</c><00:16:55.430><c> two</c><00:16:55.820><c> to</c><00:16:56.000><c> three</c><00:16:56.050><c> components</c>

00:16:57.040 --> 00:16:57.050 align:start position:0%
there are only two to three components
 

00:16:57.050 --> 00:17:03.700 align:start position:0%
there are only two to three components
that<00:16:57.080><c> we</c><00:16:57.320><c> store</c><00:16:57.620><c> a</c><00:16:57.860><c> data</c><00:16:58.280><c> structure</c><00:16:58.700><c> so</c><00:17:02.530><c> so</c><00:17:03.530><c> for</c>

00:17:03.700 --> 00:17:03.710 align:start position:0%
that we store a data structure so so for
 

00:17:03.710 --> 00:17:09.910 align:start position:0%
that we store a data structure so so for
example<00:17:04.480><c> the</c><00:17:05.480><c> condition</c><00:17:06.439><c> of</c><00:17:06.530><c> 35</c><00:17:07.040><c> is</c><00:17:07.390><c> that</c><00:17:08.920><c> it</c>

00:17:09.910 --> 00:17:09.920 align:start position:0%
example the condition of 35 is that it
 

00:17:09.920 --> 00:17:12.939 align:start position:0%
example the condition of 35 is that it
takes<00:17:10.130><c> a</c><00:17:10.280><c> look</c><00:17:10.400><c> at</c><00:17:10.640><c> branches</c><00:17:11.480><c> so</c><00:17:12.350><c> for</c><00:17:12.560><c> some</c><00:17:12.740><c> you</c>

00:17:12.939 --> 00:17:12.949 align:start position:0%
takes a look at branches so for some you
 

00:17:12.949 --> 00:17:17.079 align:start position:0%
takes a look at branches so for some you
see<00:17:13.220><c> we</c><00:17:13.400><c> start</c><00:17:14.650><c> the</c><00:17:15.650><c> body</c><00:17:15.860><c> of</c><00:17:16.010><c> this</c><00:17:16.160><c> is</c><00:17:16.339><c> almost</c>

00:17:17.079 --> 00:17:17.089 align:start position:0%
see we start the body of this is almost
 

00:17:17.089 --> 00:17:19.630 align:start position:0%
see we start the body of this is almost
earnings<00:17:17.540><c> so</c><00:17:18.199><c> after</c><00:17:18.530><c> the</c><00:17:18.650><c> body</c><00:17:18.829><c> you</c><00:17:19.130><c> need</c><00:17:19.310><c> you</c>

00:17:19.630 --> 00:17:19.640 align:start position:0%
earnings so after the body you need you
 

00:17:19.640 --> 00:17:23.380 align:start position:0%
earnings so after the body you need you
know<00:17:20.120><c> that</c><00:17:20.420><c> C</c><00:17:20.900><c> is</c><00:17:21.020><c> false</c><00:17:21.290><c> or</c><00:17:21.560><c> so</c><00:17:21.980><c> so</c><00:17:22.790><c> the</c><00:17:23.240><c> only</c>

00:17:23.380 --> 00:17:23.390 align:start position:0%
know that C is false or so so the only
 

00:17:23.390 --> 00:17:25.030 align:start position:0%
know that C is false or so so the only
thing<00:17:23.600><c> that</c><00:17:23.630><c> this</c><00:17:23.990><c> asses</c><00:17:24.380><c> injects</c>

00:17:25.030 --> 00:17:25.040 align:start position:0%
thing that this asses injects
 

00:17:25.040 --> 00:17:27.600 align:start position:0%
thing that this asses injects
assignments<00:17:25.699><c> of</c><00:17:25.790><c> this</c><00:17:25.939><c> form</c><00:17:26.240><c> after</c>

00:17:27.600 --> 00:17:27.610 align:start position:0%
assignments of this form after
 

00:17:27.610 --> 00:17:33.040 align:start position:0%
assignments of this form after
terminating<00:17:28.610><c> branches</c><00:17:29.090><c> and</c><00:17:31.060><c> other</c><00:17:32.060><c> motifs</c><00:17:32.870><c> in</c>

00:17:33.040 --> 00:17:33.050 align:start position:0%
terminating branches and other motifs in
 

00:17:33.050 --> 00:17:35.230 align:start position:0%
terminating branches and other motifs in
the<00:17:33.140><c> optimizer</c><00:17:33.590><c> can</c><00:17:34.160><c> pick</c><00:17:34.340><c> that</c><00:17:34.490><c> up</c><00:17:34.550><c> and</c><00:17:34.820><c> use</c>

00:17:35.230 --> 00:17:35.240 align:start position:0%
the optimizer can pick that up and use
 

00:17:35.240 --> 00:17:37.480 align:start position:0%
the optimizer can pick that up and use
their<00:17:35.480><c> information</c><00:17:35.810><c> but</c><00:17:36.410><c> the</c><00:17:36.950><c> information</c><00:17:37.100><c> is</c>

00:17:37.480 --> 00:17:37.490 align:start position:0%
their information but the information is
 

00:17:37.490 --> 00:17:40.000 align:start position:0%
their information but the information is
visible<00:17:37.670><c> below</c><00:17:38.060><c> this</c><00:17:38.600><c> is</c><00:17:38.750><c> not</c><00:17:38.930><c> stored</c><00:17:39.260><c> in</c><00:17:39.470><c> some</c>

00:17:40.000 --> 00:17:40.010 align:start position:0%
visible below this is not stored in some
 

00:17:40.010 --> 00:17:52.620 align:start position:0%
visible below this is not stored in some
Hey

00:17:52.620 --> 00:17:52.630 align:start position:0%
 
 

00:17:52.630 --> 00:17:56.530 align:start position:0%
 
talk<00:17:53.630><c> about</c><00:17:53.750><c> the</c><00:17:54.320><c> future</c><00:17:54.560><c> memory</c><00:17:55.460><c> times</c><00:17:55.700><c> we</c>

00:17:56.530 --> 00:17:56.540 align:start position:0%
talk about the future memory times we
 

00:17:56.540 --> 00:17:58.420 align:start position:0%
talk about the future memory times we
already<00:17:56.810><c> saw</c><00:17:56.960><c> that</c><00:17:56.990><c> we</c><00:17:57.950><c> have</c><00:17:58.100><c> some</c><00:17:58.280><c> problems</c>

00:17:58.420 --> 00:17:58.430 align:start position:0%
already saw that we have some problems
 

00:17:58.430 --> 00:18:00.580 align:start position:0%
already saw that we have some problems
with<00:17:58.790><c> memory</c><00:17:59.090><c> this</c><00:17:59.750><c> will</c><00:18:00.140><c> hopefully</c><00:18:00.290><c> be</c>

00:18:00.580 --> 00:18:00.590 align:start position:0%
with memory this will hopefully be
 

00:18:00.590 --> 00:18:04.360 align:start position:0%
with memory this will hopefully be
solved<00:18:00.890><c> by</c><00:18:01.070><c> adding</c><00:18:02.060><c> memory</c><00:18:02.840><c> chunks</c><00:18:03.680><c> as</c><00:18:03.860><c> a</c>

00:18:04.360 --> 00:18:04.370 align:start position:0%
solved by adding memory chunks as a
 

00:18:04.370 --> 00:18:08.260 align:start position:0%
solved by adding memory chunks as a
built-in<00:18:05.210><c> type</c><00:18:05.510><c> into</c><00:18:05.990><c> you</c><00:18:07.210><c> that</c><00:18:08.210><c> way</c>

00:18:08.260 --> 00:18:08.270 align:start position:0%
built-in type into you that way
 

00:18:08.270 --> 00:18:10.180 align:start position:0%
built-in type into you that way
different<00:18:08.960><c> memory</c><00:18:09.260><c> stores</c><00:18:09.560><c> two</c><00:18:09.770><c> different</c>

00:18:10.180 --> 00:18:10.190 align:start position:0%
different memory stores two different
 

00:18:10.190 --> 00:18:12.250 align:start position:0%
different memory stores two different
data<00:18:10.550><c> structure</c><00:18:11.000><c> are</c><00:18:11.330><c> fully</c><00:18:11.750><c> independent</c>

00:18:12.250 --> 00:18:12.260 align:start position:0%
data structure are fully independent
 

00:18:12.260 --> 00:18:14.230 align:start position:0%
data structure are fully independent
because<00:18:12.560><c> it</c><00:18:12.800><c> uses</c><00:18:13.160><c> kind</c><00:18:13.370><c> of</c><00:18:13.490><c> a</c><00:18:13.580><c> different</c><00:18:14.030><c> hand</c>

00:18:14.230 --> 00:18:14.240 align:start position:0%
because it uses kind of a different hand
 

00:18:14.240 --> 00:18:19.690 align:start position:0%
because it uses kind of a different hand
into<00:18:14.540><c> excess</c><00:18:14.870><c> memory</c><00:18:17.710><c> also</c><00:18:18.710><c> we're</c><00:18:19.430><c> thinking</c>

00:18:19.690 --> 00:18:19.700 align:start position:0%
into excess memory also we're thinking
 

00:18:19.700 --> 00:18:21.340 align:start position:0%
into excess memory also we're thinking
about<00:18:19.820><c> hanging</c><00:18:19.940><c> a</c><00:18:20.090><c> super</c><00:18:20.360><c> optimizer</c><00:18:20.780><c> so</c><00:18:20.960><c> in</c>

00:18:21.340 --> 00:18:21.350 align:start position:0%
about hanging a super optimizer so in
 

00:18:21.350 --> 00:18:23.500 align:start position:0%
about hanging a super optimizer so in
optimizer<00:18:21.890><c> that</c><00:18:22.040><c> takes</c><00:18:22.880><c> a</c><00:18:23.030><c> really</c><00:18:23.300><c> long</c><00:18:23.390><c> time</c>

00:18:23.500 --> 00:18:23.510 align:start position:0%
optimizer that takes a really long time
 

00:18:23.510 --> 00:18:26.200 align:start position:0%
optimizer that takes a really long time
and<00:18:23.750><c> tries</c><00:18:24.230><c> to</c><00:18:24.580><c> really</c><00:18:25.580><c> crunch</c><00:18:26.060><c> the</c><00:18:26.180><c> numbers</c>

00:18:26.200 --> 00:18:26.210 align:start position:0%
and tries to really crunch the numbers
 

00:18:26.210 --> 00:18:28.930 align:start position:0%
and tries to really crunch the numbers
and<00:18:26.660><c> find</c><00:18:26.900><c> a</c><00:18:27.050><c> good</c><00:18:27.530><c> way</c><00:18:27.710><c> to</c><00:18:27.770><c> optimize</c><00:18:28.520><c> the</c><00:18:28.790><c> code</c>

00:18:28.930 --> 00:18:28.940 align:start position:0%
and find a good way to optimize the code
 

00:18:28.940 --> 00:18:32.560 align:start position:0%
and find a good way to optimize the code
and<00:18:29.980><c> that</c><00:18:30.980><c> can</c><00:18:31.160><c> have</c><00:18:31.340><c> that</c><00:18:32.060><c> can</c><00:18:32.210><c> maybe</c><00:18:32.360><c> have</c>

00:18:32.560 --> 00:18:32.570 align:start position:0%
and that can have that can maybe have
 

00:18:32.570 --> 00:18:34.300 align:start position:0%
and that can have that can maybe have
shortcuts<00:18:33.050><c> if</c><00:18:33.290><c> you</c><00:18:33.380><c> want</c><00:18:33.560><c> to</c><00:18:33.620><c> recompile</c><00:18:34.010><c> stuff</c>

00:18:34.300 --> 00:18:34.310 align:start position:0%
shortcuts if you want to recompile stuff
 

00:18:34.310 --> 00:18:37.750 align:start position:0%
shortcuts if you want to recompile stuff
that<00:18:34.490><c> it's</c><00:18:34.610><c> it's</c><00:18:35.090><c> faster</c><00:18:35.420><c> and</c><00:18:36.550><c> when</c><00:18:37.550><c> thinking</c>

00:18:37.750 --> 00:18:37.760 align:start position:0%
that it's it's faster and when thinking
 

00:18:37.760 --> 00:18:39.880 align:start position:0%
that it's it's faster and when thinking
about<00:18:37.850><c> adding</c><00:18:38.210><c> a</c><00:18:38.330><c> genetic</c><00:18:39.320><c> I</c><00:18:39.410><c> really</c><00:18:39.710><c> need</c><00:18:39.860><c> to</c>

00:18:39.880 --> 00:18:39.890 align:start position:0%
about adding a genetic I really need to
 

00:18:39.890 --> 00:18:41.950 align:start position:0%
about adding a genetic I really need to
find<00:18:40.220><c> a</c><00:18:40.370><c> good</c><00:18:40.490><c> order</c><00:18:40.790><c> for</c><00:18:41.030><c> applying</c><00:18:41.450><c> steps</c><00:18:41.780><c> it</c>

00:18:41.950 --> 00:18:41.960 align:start position:0%
find a good order for applying steps it
 

00:18:41.960 --> 00:18:44.590 align:start position:0%
find a good order for applying steps it
has<00:18:42.050><c> already</c><00:18:42.290><c> said</c><00:18:42.580><c> each</c><00:18:43.580><c> step</c><00:18:43.910><c> individually</c>

00:18:44.590 --> 00:18:44.600 align:start position:0%
has already said each step individually
 

00:18:44.600 --> 00:18:48.310 align:start position:0%
has already said each step individually
should<00:18:45.290><c> be</c><00:18:45.440><c> correct</c><00:18:45.710><c> the</c><00:18:46.430><c> order</c><00:18:47.320><c> doesn't</c>

00:18:48.310 --> 00:18:48.320 align:start position:0%
should be correct the order doesn't
 

00:18:48.320 --> 00:18:49.750 align:start position:0%
should be correct the order doesn't
matter<00:18:48.440><c> for</c><00:18:48.710><c> correctness</c><00:18:49.070><c> but</c><00:18:49.430><c> it</c><00:18:49.580><c> matters</c>

00:18:49.750 --> 00:18:49.760 align:start position:0%
matter for correctness but it matters
 

00:18:49.760 --> 00:18:54.000 align:start position:0%
matter for correctness but it matters
for<00:18:49.940><c> efficiency</c><00:18:50.900><c> and</c><00:18:52.690><c> yes</c>

00:18:54.000 --> 00:18:54.010 align:start position:0%
for efficiency and yes
 

00:18:54.010 --> 00:18:56.290 align:start position:0%
for efficiency and yes
fortunately<00:18:55.010><c> come</c><00:18:55.190><c> up</c><00:18:55.310><c> with</c><00:18:55.490><c> a</c><00:18:55.610><c> good</c><00:18:55.970><c> order</c><00:18:56.120><c> to</c>

00:18:56.290 --> 00:18:56.300 align:start position:0%
fortunately come up with a good order to
 

00:18:56.300 --> 00:19:07.980 align:start position:0%
fortunately come up with a good order to
apply<00:18:56.480><c> them</c>

00:19:07.980 --> 00:19:07.990 align:start position:0%
 
 

00:19:07.990 --> 00:19:14.960 align:start position:0%
 
the<00:19:08.170><c> truth</c><00:19:08.380><c> was</c><00:19:08.470><c> that</c>

00:19:14.960 --> 00:19:14.970 align:start position:0%
 
 

00:19:14.970 --> 00:19:21.310 align:start position:0%
 
[Applause]

