WEBVTT
Kind: captions
Language: en

00:00:00.060 --> 00:00:03.230 align:start position:0%
 
so<00:00:00.480><c> welcome</c><00:00:01.469><c> everybody</c><00:00:02.070><c> to</c><00:00:02.490><c> this</c><00:00:02.700><c> session</c>

00:00:03.230 --> 00:00:03.240 align:start position:0%
so welcome everybody to this session
 

00:00:03.240 --> 00:00:07.070 align:start position:0%
so welcome everybody to this session
which<00:00:04.170><c> is</c><00:00:04.650><c> called</c><00:00:05.609><c> live</c><00:00:06.000><c> hacking</c><00:00:06.660><c> smart</c>

00:00:07.070 --> 00:00:07.080 align:start position:0%
which is called live hacking smart
 

00:00:07.080 --> 00:00:14.060 align:start position:0%
which is called live hacking smart
contracts<00:00:10.849><c> we're</c><00:00:11.849><c> not</c><00:00:12.030><c> actually</c><00:00:12.240><c> going</c><00:00:12.690><c> to</c><00:00:13.070><c> do</c>

00:00:14.060 --> 00:00:14.070 align:start position:0%
contracts we're not actually going to do
 

00:00:14.070 --> 00:00:17.720 align:start position:0%
contracts we're not actually going to do
like<00:00:14.400><c> depth</c><00:00:15.000><c> con</c><00:00:15.570><c> style</c><00:00:15.960><c> hacking</c><00:00:16.800><c> into</c><00:00:17.039><c> live</c>

00:00:17.720 --> 00:00:17.730 align:start position:0%
like depth con style hacking into live
 

00:00:17.730 --> 00:00:23.480 align:start position:0%
like depth con style hacking into live
systems<00:00:20.630><c> kind</c><00:00:21.630><c> of</c><00:00:21.750><c> interactive</c><00:00:22.470><c> session</c><00:00:22.920><c> with</c>

00:00:23.480 --> 00:00:23.490 align:start position:0%
systems kind of interactive session with
 

00:00:23.490 --> 00:00:27.529 align:start position:0%
systems kind of interactive session with
the<00:00:23.640><c> audience</c><00:00:24.470><c> where</c><00:00:25.470><c> we</c><00:00:25.710><c> discuss</c><00:00:26.539><c> security</c>

00:00:27.529 --> 00:00:27.539 align:start position:0%
the audience where we discuss security
 

00:00:27.539 --> 00:00:29.330 align:start position:0%
the audience where we discuss security
that's<00:00:28.019><c> one</c><00:00:28.199><c> thing</c><00:00:28.410><c> discuss</c><00:00:28.769><c> it</c><00:00:28.949><c> from</c><00:00:29.130><c> like</c><00:00:29.310><c> a</c>

00:00:29.330 --> 00:00:29.340 align:start position:0%
that's one thing discuss it from like a
 

00:00:29.340 --> 00:00:33.319 align:start position:0%
that's one thing discuss it from like a
high-level<00:00:30.029><c> perspective</c><00:00:30.390><c> and</c><00:00:32.329><c> meanwhile</c>

00:00:33.319 --> 00:00:33.329 align:start position:0%
high-level perspective and meanwhile
 

00:00:33.329 --> 00:00:36.799 align:start position:0%
high-level perspective and meanwhile
also<00:00:33.930><c> trying</c><00:00:34.230><c> to</c><00:00:34.500><c> actually</c><00:00:34.980><c> find</c><00:00:35.550><c> bugs</c><00:00:35.940><c> in</c><00:00:36.480><c> the</c>

00:00:36.799 --> 00:00:36.809 align:start position:0%
also trying to actually find bugs in the
 

00:00:36.809 --> 00:00:40.240 align:start position:0%
also trying to actually find bugs in the
nitty<00:00:36.989><c> gritty</c><00:00:37.320><c> details</c><00:00:37.350><c> of</c><00:00:38.250><c> the</c><00:00:38.489><c> contract</c>

00:00:40.240 --> 00:00:40.250 align:start position:0%
nitty gritty details of the contract
 

00:00:40.250 --> 00:00:44.119 align:start position:0%
nitty gritty details of the contract
there<00:00:41.250><c> will</c><00:00:41.430><c> be</c><00:00:41.460><c> technical</c><00:00:42.059><c> glitches</c><00:00:42.950><c> we</c><00:00:43.950><c> will</c>

00:00:44.119 --> 00:00:44.129 align:start position:0%
there will be technical glitches we will
 

00:00:44.129 --> 00:00:46.010 align:start position:0%
there will be technical glitches we will
have<00:00:44.430><c> to</c><00:00:44.640><c> switch</c><00:00:44.910><c> over</c><00:00:45.090><c> the</c><00:00:45.360><c> viewport</c><00:00:45.840><c> from</c>

00:00:46.010 --> 00:00:46.020 align:start position:0%
have to switch over the viewport from
 

00:00:46.020 --> 00:00:48.170 align:start position:0%
have to switch over the viewport from
different<00:00:46.379><c> laptops</c><00:00:46.620><c> and</c><00:00:47.280><c> stuff</c><00:00:47.520><c> and</c><00:00:47.820><c> hope</c><00:00:48.000><c> you</c>

00:00:48.170 --> 00:00:48.180 align:start position:0%
different laptops and stuff and hope you
 

00:00:48.180 --> 00:00:52.400 align:start position:0%
different laptops and stuff and hope you
have<00:00:48.510><c> some</c><00:00:49.309><c> patience</c><00:00:50.309><c> with</c><00:00:50.430><c> that</c><00:00:51.350><c> person</c><00:00:52.350><c> so</c>

00:00:52.400 --> 00:00:52.410 align:start position:0%
have some patience with that person so
 

00:00:52.410 --> 00:00:55.400 align:start position:0%
have some patience with that person so
I'm<00:00:52.590><c> marked</c><00:00:53.129><c> in</c><00:00:53.340><c> whole</c><00:00:53.579><c> Sanda</c><00:00:53.969><c> I</c><00:00:54.180><c> work</c><00:00:54.840><c> for</c><00:00:55.320><c> the</c>

00:00:55.400 --> 00:00:55.410 align:start position:0%
I'm marked in whole Sanda I work for the
 

00:00:55.410 --> 00:00:59.209 align:start position:0%
I'm marked in whole Sanda I work for the
etherion<00:00:55.770><c> foundation</c><00:00:57.109><c> with</c><00:00:58.109><c> security</c><00:00:58.649><c> at</c><00:00:59.070><c> the</c>

00:00:59.209 --> 00:00:59.219 align:start position:0%
etherion foundation with security at the
 

00:00:59.219 --> 00:01:01.599 align:start position:0%
etherion foundation with security at the
rim<00:00:59.340><c> security</c><00:00:59.820><c> and</c><00:01:00.120><c> also</c><00:01:00.629><c> kept</c><00:01:00.899><c> development</c>

00:01:01.599 --> 00:01:01.609 align:start position:0%
rim security and also kept development
 

00:01:01.609 --> 00:01:04.729 align:start position:0%
rim security and also kept development
with<00:01:02.609><c> me</c><00:01:02.820><c> we've</c><00:01:03.449><c> got</c><00:01:03.719><c> the</c><00:01:04.080><c> Matthew</c><00:01:04.470><c> differente</c>

00:01:04.729 --> 00:01:04.739 align:start position:0%
with me we've got the Matthew differente
 

00:01:04.739 --> 00:01:09.260 align:start position:0%
with me we've got the Matthew differente
here<00:01:05.390><c> founder</c><00:01:06.390><c> of</c><00:01:06.450><c> seeker</c><00:01:07.110><c> labs</c><00:01:07.380><c> and</c><00:01:08.270><c> smart</c>

00:01:09.260 --> 00:01:09.270 align:start position:0%
here founder of seeker labs and smart
 

00:01:09.270 --> 00:01:12.530 align:start position:0%
here founder of seeker labs and smart
contracts<00:01:09.840><c> auditing</c><00:01:10.470><c> and</c><00:01:10.970><c> yeah</c><00:01:11.970><c> creeper</c>

00:01:12.530 --> 00:01:12.540 align:start position:0%
contracts auditing and yeah creeper
 

00:01:12.540 --> 00:01:15.710 align:start position:0%
contracts auditing and yeah creeper
research<00:01:12.869><c> and</c><00:01:12.990><c> stuff</c><00:01:13.880><c> and</c><00:01:14.880><c> we</c><00:01:15.150><c> got</c><00:01:15.330><c> Richard</c>

00:01:15.710 --> 00:01:15.720 align:start position:0%
research and stuff and we got Richard
 

00:01:15.720 --> 00:01:20.990 align:start position:0%
research and stuff and we got Richard
Moore<00:01:17.150><c> authors</c><00:01:18.150><c> or</c><00:01:18.450><c> author</c><00:01:18.840><c> of</c><00:01:19.020><c> ethers</c><00:01:20.000><c> ojs</c>

00:01:20.990 --> 00:01:21.000 align:start position:0%
Moore authors or author of ethers ojs
 

00:01:21.000 --> 00:01:28.160 align:start position:0%
Moore authors or author of ethers ojs
and<00:01:21.479><c> also</c><00:01:22.380><c> I</c><00:01:22.710><c> know</c><00:01:23.159><c> does</c><00:01:23.790><c> random</c><00:01:24.479><c> stuff</c><00:01:25.610><c> and</c><00:01:27.170><c> we</c>

00:01:28.160 --> 00:01:28.170 align:start position:0%
and also I know does random stuff and we
 

00:01:28.170 --> 00:01:30.350 align:start position:0%
and also I know does random stuff and we
were<00:01:28.290><c> just</c><00:01:28.500><c> joined</c><00:01:28.770><c> by</c><00:01:29.250><c> the</c><00:01:29.880><c> awesome</c><00:01:30.210><c> Nick</c>

00:01:30.350 --> 00:01:30.360 align:start position:0%
were just joined by the awesome Nick
 

00:01:30.360 --> 00:01:40.640 align:start position:0%
were just joined by the awesome Nick
Johnson<00:01:31.520><c> came</c><00:01:32.520><c> right</c><00:01:32.820><c> from</c><00:01:32.850><c> a</c><00:01:33.560><c> DNS</c><00:01:34.560><c> AMA</c><00:01:39.079><c> so</c><00:01:40.079><c> the</c>

00:01:40.640 --> 00:01:40.650 align:start position:0%
Johnson came right from a DNS AMA so the
 

00:01:40.650 --> 00:01:45.109 align:start position:0%
Johnson came right from a DNS AMA so the
idea<00:01:41.340><c> is</c><00:01:42.000><c> that</c><00:01:42.509><c> we</c><00:01:43.439><c> take</c><00:01:44.430><c> a</c><00:01:44.490><c> piece</c><00:01:44.729><c> of</c><00:01:44.909><c> code</c>

00:01:45.109 --> 00:01:45.119 align:start position:0%
idea is that we take a piece of code
 

00:01:45.119 --> 00:01:47.840 align:start position:0%
idea is that we take a piece of code
which<00:01:45.479><c> someone</c><00:01:46.229><c> here</c><00:01:46.409><c> submits</c><00:01:46.829><c> and</c><00:01:47.729><c> we</c>

00:01:47.840 --> 00:01:47.850 align:start position:0%
which someone here submits and we
 

00:01:47.850 --> 00:01:50.539 align:start position:0%
which someone here submits and we
discuss<00:01:48.149><c> it</c><00:01:48.299><c> and</c><00:01:48.479><c> if</c><00:01:49.110><c> possible</c><00:01:49.560><c> we</c><00:01:50.130><c> will</c><00:01:50.430><c> be</c>

00:01:50.539 --> 00:01:50.549 align:start position:0%
discuss it and if possible we will be
 

00:01:50.549 --> 00:01:54.230 align:start position:0%
discuss it and if possible we will be
very<00:01:50.790><c> grateful</c><00:01:51.030><c> if</c><00:01:51.740><c> that</c><00:01:52.740><c> someone</c><00:01:53.399><c> is</c><00:01:53.579><c> willing</c>

00:01:54.230 --> 00:01:54.240 align:start position:0%
very grateful if that someone is willing
 

00:01:54.240 --> 00:01:57.350 align:start position:0%
very grateful if that someone is willing
to<00:01:54.420><c> come</c><00:01:54.689><c> up</c><00:01:54.810><c> on</c><00:01:54.990><c> stage</c><00:01:55.020><c> and</c><00:01:55.850><c> chat</c><00:01:56.850><c> with</c><00:01:57.030><c> us</c><00:01:57.119><c> for</c>

00:01:57.350 --> 00:01:57.360 align:start position:0%
to come up on stage and chat with us for
 

00:01:57.360 --> 00:02:02.359 align:start position:0%
to come up on stage and chat with us for
bids<00:01:57.509><c> and</c><00:01:58.200><c> talk</c><00:01:58.439><c> about</c><00:01:58.560><c> the</c><00:01:58.710><c> contract</c><00:02:01.159><c> and</c><00:02:02.159><c> as</c>

00:02:02.359 --> 00:02:02.369 align:start position:0%
bids and talk about the contract and as
 

00:02:02.369 --> 00:02:03.770 align:start position:0%
bids and talk about the contract and as
far<00:02:02.549><c> as</c><00:02:02.640><c> I</c><00:02:02.700><c> know</c><00:02:02.880><c> we've</c><00:02:03.090><c> received</c><00:02:03.540><c> one</c>

00:02:03.770 --> 00:02:03.780 align:start position:0%
far as I know we've received one
 

00:02:03.780 --> 00:02:09.469 align:start position:0%
far as I know we've received one
submission<00:02:04.530><c> so</c><00:02:04.799><c> far</c><00:02:05.040><c> over</c><00:02:05.369><c> Twitter</c><00:02:06.680><c> so</c><00:02:07.680><c> is</c><00:02:08.479><c> mr.</c>

00:02:09.469 --> 00:02:09.479 align:start position:0%
submission so far over Twitter so is mr.
 

00:02:09.479 --> 00:02:13.880 align:start position:0%
submission so far over Twitter so is mr.
Appleton<00:02:11.000><c> present</c><00:02:12.000><c> and</c><00:02:12.270><c> would</c><00:02:12.540><c> he</c><00:02:12.720><c> like</c><00:02:12.989><c> to</c>

00:02:13.880 --> 00:02:13.890 align:start position:0%
Appleton present and would he like to
 

00:02:13.890 --> 00:02:17.960 align:start position:0%
Appleton present and would he like to
join<00:02:14.610><c> us</c><00:02:14.790><c> in</c><00:02:16.130><c> the</c><00:02:17.130><c> room</c><00:02:17.310><c> I</c><00:02:17.490><c> guess</c><00:02:17.820><c> they're</c><00:02:17.940><c> not</c>

00:02:17.960 --> 00:02:17.970 align:start position:0%
join us in the room I guess they're not
 

00:02:17.970 --> 00:02:23.120 align:start position:0%
join us in the room I guess they're not
here<00:02:18.240><c> they're</c><00:02:18.960><c> not</c><00:02:19.140><c> there</c><00:02:21.860><c> that's</c><00:02:22.860><c> a</c><00:02:23.010><c> bit</c>

00:02:23.120 --> 00:02:23.130 align:start position:0%
here they're not there that's a bit
 

00:02:23.130 --> 00:02:24.740 align:start position:0%
here they're not there that's a bit
unfortunate<00:02:23.490><c> because</c><00:02:24.120><c> one</c><00:02:24.330><c> of</c><00:02:24.420><c> the</c><00:02:24.510><c> things</c>

00:02:24.740 --> 00:02:24.750 align:start position:0%
unfortunate because one of the things
 

00:02:24.750 --> 00:02:26.870 align:start position:0%
unfortunate because one of the things
like<00:02:25.500><c> from</c><00:02:25.740><c> a</c><00:02:25.800><c> security</c><00:02:26.070><c> perspective</c><00:02:26.340><c> that</c>

00:02:26.870 --> 00:02:26.880 align:start position:0%
like from a security perspective that
 

00:02:26.880 --> 00:02:29.240 align:start position:0%
like from a security perspective that
it's<00:02:27.120><c> good</c><00:02:27.300><c> to</c><00:02:27.450><c> do</c><00:02:27.630><c> is</c><00:02:28.020><c> get</c><00:02:28.260><c> a</c><00:02:28.290><c> general</c><00:02:29.100><c> high</c>

00:02:29.240 --> 00:02:29.250 align:start position:0%
it's good to do is get a general high
 

00:02:29.250 --> 00:02:31.730 align:start position:0%
it's good to do is get a general high
level<00:02:29.640><c> understanding</c><00:02:30.440><c> what</c><00:02:31.440><c> is</c><00:02:31.560><c> this</c>

00:02:31.730 --> 00:02:31.740 align:start position:0%
level understanding what is this
 

00:02:31.740 --> 00:02:37.250 align:start position:0%
level understanding what is this
contract<00:02:32.370><c> do</c><00:02:32.580><c> and</c><00:02:34.190><c> what</c><00:02:35.190><c> are</c><00:02:35.280><c> the</c><00:02:35.340><c> assets</c><00:02:36.260><c> so</c>

00:02:37.250 --> 00:02:37.260 align:start position:0%
contract do and what are the assets so
 

00:02:37.260 --> 00:02:40.400 align:start position:0%
contract do and what are the assets so
we<00:02:37.410><c> kind</c><00:02:37.620><c> of</c><00:02:37.680><c> have</c><00:02:37.860><c> a</c><00:02:37.890><c> bounds</c><00:02:38.400><c> on</c><00:02:39.080><c> what</c><00:02:40.080><c> can</c><00:02:40.350><c> be</c>

00:02:40.400 --> 00:02:40.410 align:start position:0%
we kind of have a bounds on what can be
 

00:02:40.410 --> 00:02:43.370 align:start position:0%
we kind of have a bounds on what can be
lost<00:02:40.830><c> and</c><00:02:41.690><c> what</c><00:02:42.690><c> would</c><00:02:42.900><c> be</c><00:02:42.990><c> like</c><00:02:43.170><c> the</c><00:02:43.350><c> worst</c>

00:02:43.370 --> 00:02:43.380 align:start position:0%
lost and what would be like the worst
 

00:02:43.380 --> 00:02:47.630 align:start position:0%
lost and what would be like the worst
case<00:02:43.950><c> to</c><00:02:44.220><c> happen</c><00:02:44.580><c> and</c><00:02:45.650><c> get</c><00:02:46.650><c> an</c><00:02:46.740><c> idea</c><00:02:46.950><c> on</c><00:02:47.250><c> what</c>

00:02:47.630 --> 00:02:47.640 align:start position:0%
case to happen and get an idea on what
 

00:02:47.640 --> 00:02:51.380 align:start position:0%
case to happen and get an idea on what
to<00:02:47.670><c> look</c><00:02:47.790><c> out</c><00:02:48.060><c> for</c><00:02:48.360><c> him</c><00:02:50.090><c> since</c><00:02:51.090><c> this</c>

00:02:51.380 --> 00:02:51.390 align:start position:0%
to look out for him since this
 

00:02:51.390 --> 00:02:53.120 align:start position:0%
to look out for him since this
particular<00:02:52.020><c> contract</c><00:02:52.620><c> was</c><00:02:52.740><c> submitted</c>

00:02:53.120 --> 00:02:53.130 align:start position:0%
particular contract was submitted
 

00:02:53.130 --> 00:02:56.090 align:start position:0%
particular contract was submitted
yesterday<00:02:53.340><c> I</c><00:02:53.880><c> think</c><00:02:54.810><c> all</c><00:02:54.990><c> four</c><00:02:55.770><c> of</c><00:02:55.830><c> us</c><00:02:55.950><c> have</c>

00:02:56.090 --> 00:02:56.100 align:start position:0%
yesterday I think all four of us have
 

00:02:56.100 --> 00:03:01.280 align:start position:0%
yesterday I think all four of us have
probably<00:02:56.340><c> taken</c><00:02:56.880><c> at</c><00:02:57.120><c> least</c><00:02:57.180><c> a</c><00:02:57.450><c> peek</c><00:02:57.720><c> on</c><00:02:57.990><c> it</c><00:03:00.290><c> is</c>

00:03:01.280 --> 00:03:01.290 align:start position:0%
probably taken at least a peek on it is
 

00:03:01.290 --> 00:03:04.370 align:start position:0%
probably taken at least a peek on it is
that<00:03:01.470><c> one</c><00:03:01.650><c> of</c><00:03:01.770><c> you</c><00:03:01.860><c> guys</c><00:03:02.040><c> wanna</c><00:03:03.050><c> has</c><00:03:04.050><c> seen</c>

00:03:04.370 --> 00:03:04.380 align:start position:0%
that one of you guys wanna has seen
 

00:03:04.380 --> 00:03:05.870 align:start position:0%
that one of you guys wanna has seen
something<00:03:04.740><c> interesting</c><00:03:05.130><c> sure</c><00:03:05.250><c> to</c><00:03:05.370><c> go</c><00:03:05.490><c> from</c>

00:03:05.870 --> 00:03:05.880 align:start position:0%
something interesting sure to go from
 

00:03:05.880 --> 00:03:10.930 align:start position:0%
something interesting sure to go from
top<00:03:06.060><c> to</c><00:03:06.090><c> bottom</c><00:03:06.270><c> or</c><00:03:09.080><c> say</c><00:03:10.080><c> what</c><00:03:10.260><c> we</c><00:03:10.410><c> what</c><00:03:10.710><c> we</c>

00:03:10.930 --> 00:03:10.940 align:start position:0%
top to bottom or say what we what we
 

00:03:10.940 --> 00:03:15.020 align:start position:0%
top to bottom or say what we what we
think<00:03:11.940><c> about</c><00:03:12.180><c> this</c><00:03:13.580><c> so</c><00:03:14.580><c> it's</c><00:03:14.730><c> a</c><00:03:14.790><c> token</c>

00:03:15.020 --> 00:03:15.030 align:start position:0%
think about this so it's a token
 

00:03:15.030 --> 00:03:21.050 align:start position:0%
think about this so it's a token
contract<00:03:18.020><c> which</c><00:03:19.020><c> to</c><00:03:20.010><c> most</c><00:03:20.190><c> appearances</c><00:03:20.550><c> is</c>

00:03:21.050 --> 00:03:21.060 align:start position:0%
contract which to most appearances is
 

00:03:21.060 --> 00:03:29.449 align:start position:0%
contract which to most appearances is
quite<00:03:21.690><c> normal</c><00:03:22.250><c> it</c><00:03:23.250><c> has</c><00:03:23.970><c> an</c><00:03:24.900><c> owner</c><00:03:28.340><c> there</c><00:03:29.340><c> is</c><00:03:29.370><c> a</c>

00:03:29.449 --> 00:03:29.459 align:start position:0%
quite normal it has an owner there is a
 

00:03:29.459 --> 00:03:32.870 align:start position:0%
quite normal it has an owner there is a
transfer<00:03:30.120><c> and</c><00:03:30.470><c> this</c><00:03:31.470><c> is</c><00:03:31.610><c> actually</c><00:03:32.610><c> a</c><00:03:32.640><c> pattern</c>

00:03:32.870 --> 00:03:32.880 align:start position:0%
transfer and this is actually a pattern
 

00:03:32.880 --> 00:03:34.940 align:start position:0%
transfer and this is actually a pattern
here<00:03:33.150><c> which</c><00:03:33.270><c> I'd</c><00:03:33.450><c> like</c><00:03:33.660><c> to</c><00:03:33.870><c> race</c><00:03:34.080><c> as</c><00:03:34.320><c> a</c><00:03:34.350><c> good</c>

00:03:34.940 --> 00:03:34.950 align:start position:0%
here which I'd like to race as a good
 

00:03:34.950 --> 00:03:42.040 align:start position:0%
here which I'd like to race as a good
example<00:03:35.540><c> which</c><00:03:36.540><c> I</c><00:03:36.720><c> call</c><00:03:36.959><c> the</c><00:03:37.760><c> double</c><00:03:38.760><c> dispatch</c>

00:03:42.040 --> 00:03:42.050 align:start position:0%
 
 

00:03:42.050 --> 00:03:47.040 align:start position:0%
 
ownership<00:03:44.209><c> no</c><00:03:45.209><c> sorry</c><00:03:45.690><c> it</c><00:03:46.020><c> doesn't</c><00:03:46.350><c> have</c><00:03:46.500><c> that</c>

00:03:47.040 --> 00:03:47.050 align:start position:0%
ownership no sorry it doesn't have that
 

00:03:47.050 --> 00:03:49.300 align:start position:0%
ownership no sorry it doesn't have that
[Music]

00:03:49.300 --> 00:03:49.310 align:start position:0%
[Music]
 

00:03:49.310 --> 00:03:51.770 align:start position:0%
[Music]
so<00:03:50.310><c> when</c><00:03:50.490><c> you</c><00:03:50.580><c> transfer</c><00:03:50.790><c> ownership</c><00:03:51.180><c> of</c><00:03:51.600><c> this</c>

00:03:51.770 --> 00:03:51.780 align:start position:0%
so when you transfer ownership of this
 

00:03:51.780 --> 00:03:54.380 align:start position:0%
so when you transfer ownership of this
thing<00:03:52.050><c> to</c><00:03:52.320><c> someone</c><00:03:52.560><c> else</c><00:03:52.860><c> it</c><00:03:53.430><c> has</c><00:03:53.640><c> to</c><00:03:53.790><c> check</c><00:03:54.090><c> to</c>

00:03:54.380 --> 00:03:54.390 align:start position:0%
thing to someone else it has to check to
 

00:03:54.390 --> 00:03:56.420 align:start position:0%
thing to someone else it has to check to
see<00:03:54.570><c> that</c><00:03:54.600><c> you</c><00:03:55.380><c> don't</c><00:03:55.590><c> actually</c><00:03:55.770><c> transfer</c><00:03:56.370><c> it</c>

00:03:56.420 --> 00:03:56.430 align:start position:0%
see that you don't actually transfer it
 

00:03:56.430 --> 00:04:00.980 align:start position:0%
see that you don't actually transfer it
to<00:03:56.490><c> no</c><00:03:57.360><c> owner</c><00:03:59.060><c> and</c><00:04:00.060><c> then</c><00:04:00.300><c> it</c><00:04:00.390><c> just</c><00:04:00.540><c> sets</c><00:04:00.780><c> the</c>

00:04:00.980 --> 00:04:00.990 align:start position:0%
to no owner and then it just sets the
 

00:04:00.990 --> 00:04:02.870 align:start position:0%
to no owner and then it just sets the
owner<00:04:01.200><c> to</c><00:04:01.320><c> the</c><00:04:01.440><c> new</c><00:04:01.620><c> owner</c><00:04:01.830><c> there's</c><00:04:02.610><c> another</c>

00:04:02.870 --> 00:04:02.880 align:start position:0%
owner to the new owner there's another
 

00:04:02.880 --> 00:04:05.720 align:start position:0%
owner to the new owner there's another
way<00:04:03.150><c> to</c><00:04:03.209><c> do</c><00:04:03.540><c> this</c><00:04:03.770><c> the</c><00:04:04.770><c> double</c><00:04:05.070><c> dispatch</c><00:04:05.430><c> is</c>

00:04:05.720 --> 00:04:05.730 align:start position:0%
way to do this the double dispatch is
 

00:04:05.730 --> 00:04:09.020 align:start position:0%
way to do this the double dispatch is
that<00:04:06.120><c> you</c><00:04:06.240><c> set</c><00:04:07.190><c> you</c><00:04:08.190><c> don't</c><00:04:08.370><c> set</c><00:04:08.550><c> the</c><00:04:08.580><c> owner</c><00:04:08.910><c> to</c>

00:04:09.020 --> 00:04:09.030 align:start position:0%
that you set you don't set the owner to
 

00:04:09.030 --> 00:04:10.610 align:start position:0%
that you set you don't set the owner to
new<00:04:09.209><c> owner</c><00:04:09.330><c> you</c><00:04:09.600><c> set</c><00:04:09.780><c> the</c><00:04:09.900><c> potential</c><00:04:10.440><c> new</c>

00:04:10.610 --> 00:04:10.620 align:start position:0%
new owner you set the potential new
 

00:04:10.620 --> 00:04:13.729 align:start position:0%
new owner you set the potential new
owner<00:04:10.800><c> to</c><00:04:11.700><c> the</c><00:04:11.730><c> new</c><00:04:11.970><c> owner</c><00:04:12.150><c> and</c><00:04:12.570><c> then</c><00:04:13.110><c> the</c>

00:04:13.729 --> 00:04:13.739 align:start position:0%
owner to the new owner and then the
 

00:04:13.739 --> 00:04:16.220 align:start position:0%
owner to the new owner and then the
actual<00:04:14.520><c> new</c><00:04:14.700><c> owner</c><00:04:14.910><c> needs</c><00:04:15.239><c> to</c><00:04:15.360><c> make</c><00:04:15.570><c> a</c><00:04:15.600><c> call</c><00:04:15.900><c> to</c>

00:04:16.220 --> 00:04:16.230 align:start position:0%
actual new owner needs to make a call to
 

00:04:16.230 --> 00:04:21.080 align:start position:0%
actual new owner needs to make a call to
accept<00:04:16.859><c> the</c><00:04:17.160><c> ownership</c><00:04:17.850><c> and</c><00:04:18.270><c> that</c><00:04:19.230><c> means</c><00:04:20.090><c> that</c>

00:04:21.080 --> 00:04:21.090 align:start position:0%
accept the ownership and that means that
 

00:04:21.090 --> 00:04:22.909 align:start position:0%
accept the ownership and that means that
you<00:04:21.270><c> know</c><00:04:21.450><c> for</c><00:04:21.720><c> a</c><00:04:21.750><c> fact</c><00:04:21.989><c> that</c><00:04:22.229><c> the</c><00:04:22.560><c> owner</c><00:04:22.740><c> of</c>

00:04:22.909 --> 00:04:22.919 align:start position:0%
you know for a fact that the owner of
 

00:04:22.919 --> 00:04:27.080 align:start position:0%
you know for a fact that the owner of
the<00:04:23.100><c> contract</c><00:04:23.580><c> is</c><00:04:23.790><c> capable</c><00:04:24.390><c> of</c><00:04:25.010><c> making</c><00:04:26.010><c> their</c>

00:04:27.080 --> 00:04:27.090 align:start position:0%
the contract is capable of making their
 

00:04:27.090 --> 00:04:34.450 align:start position:0%
the contract is capable of making their
messages<00:04:27.540><c> and</c><00:04:27.780><c> interacting</c><00:04:28.530><c> with</c><00:04:29.000><c> contracts</c>

00:04:34.450 --> 00:04:34.460 align:start position:0%
 
 

00:04:34.460 --> 00:04:38.890 align:start position:0%
 
[Music]

00:04:38.890 --> 00:04:38.900 align:start position:0%
 
 

00:04:38.900 --> 00:04:42.560 align:start position:0%
 
then<00:04:39.900><c> we</c><00:04:40.080><c> have</c><00:04:40.229><c> the</c><00:04:40.410><c> ERC</c><00:04:40.800><c> 20</c><00:04:41.699><c> implementation</c>

00:04:42.560 --> 00:04:42.570 align:start position:0%
then we have the ERC 20 implementation
 

00:04:42.570 --> 00:04:47.260 align:start position:0%
then we have the ERC 20 implementation
[Music]

00:04:47.260 --> 00:04:47.270 align:start position:0%
 
 

00:04:47.270 --> 00:04:55.219 align:start position:0%
 
and<00:04:48.270><c> we</c><00:04:49.169><c> have</c><00:04:49.320><c> safe</c><00:04:49.710><c> map</c><00:04:50.780><c> so</c><00:04:53.720><c> anything's</c><00:04:54.720><c> there</c>

00:04:55.219 --> 00:04:55.229 align:start position:0%
and we have safe map so anything's there
 

00:04:55.229 --> 00:04:56.930 align:start position:0%
and we have safe map so anything's there
nothing<00:04:55.919><c> real</c><00:04:56.040><c> to</c><00:04:56.070><c> mention</c><00:04:56.460><c> about</c><00:04:56.550><c> the</c><00:04:56.729><c> safe</c>

00:04:56.930 --> 00:04:56.940 align:start position:0%
nothing real to mention about the safe
 

00:04:56.940 --> 00:05:00.469 align:start position:0%
nothing real to mention about the safe
math<00:04:57.449><c> is</c><00:04:57.960><c> kind</c><00:04:58.560><c> of</c><00:04:58.740><c> standard</c><00:04:59.370><c> although</c><00:05:00.270><c> it</c>

00:05:00.469 --> 00:05:00.479 align:start position:0%
math is kind of standard although it
 

00:05:00.479 --> 00:05:02.330 align:start position:0%
math is kind of standard although it
might<00:05:00.570><c> be</c><00:05:00.720><c> worth</c><00:05:00.870><c> noting</c><00:05:01.220><c> when</c><00:05:02.220><c> you're</c>

00:05:02.330 --> 00:05:02.340 align:start position:0%
might be worth noting when you're
 

00:05:02.340 --> 00:05:03.560 align:start position:0%
might be worth noting when you're
looking<00:05:02.550><c> at</c><00:05:02.639><c> Elsa's</c><00:05:02.940><c> contract</c><00:05:03.330><c> you</c><00:05:03.450><c> might</c>

00:05:03.560 --> 00:05:03.570 align:start position:0%
looking at Elsa's contract you might
 

00:05:03.570 --> 00:05:04.730 align:start position:0%
looking at Elsa's contract you might
want<00:05:03.720><c> to</c><00:05:03.750><c> check</c><00:05:03.990><c> to</c><00:05:04.020><c> make</c><00:05:04.139><c> sure</c><00:05:04.229><c> the</c><00:05:04.380><c> safe</c><00:05:04.500><c> Mac</c>

00:05:04.730 --> 00:05:04.740 align:start position:0%
want to check to make sure the safe Mac
 

00:05:04.740 --> 00:05:06.530 align:start position:0%
want to check to make sure the safe Mac
what<00:05:05.280><c> Scott</c><00:05:05.520><c> was</c><00:05:05.639><c> copied</c><00:05:05.970><c> over</c><00:05:06.090><c> and</c><00:05:06.450><c> they</c>

00:05:06.530 --> 00:05:06.540 align:start position:0%
what Scott was copied over and they
 

00:05:06.540 --> 00:05:09.050 align:start position:0%
what Scott was copied over and they
aren't<00:05:06.780><c> hiding</c><00:05:07.410><c> bugs</c><00:05:07.800><c> in</c><00:05:07.979><c> that</c><00:05:08.010><c> you</c><00:05:08.940><c> might</c>

00:05:09.050 --> 00:05:09.060 align:start position:0%
aren't hiding bugs in that you might
 

00:05:09.060 --> 00:05:11.360 align:start position:0%
aren't hiding bugs in that you might
just<00:05:09.120><c> loss</c><00:05:09.360><c> over</c><00:05:09.630><c> I</c><00:05:09.660><c> trust</c><00:05:10.290><c> it</c><00:05:10.440><c> and</c><00:05:10.560><c> then</c><00:05:10.680><c> who's</c>

00:05:11.360 --> 00:05:11.370 align:start position:0%
just loss over I trust it and then who's
 

00:05:11.370 --> 00:05:14.540 align:start position:0%
just loss over I trust it and then who's
that<00:05:11.720><c> yes</c><00:05:12.720><c> I</c><00:05:13.110><c> think</c><00:05:13.229><c> I</c><00:05:13.560><c> feel</c><00:05:13.710><c> like</c><00:05:13.740><c> that's</c><00:05:14.280><c> one</c>

00:05:14.540 --> 00:05:14.550 align:start position:0%
that yes I think I feel like that's one
 

00:05:14.550 --> 00:05:17.390 align:start position:0%
that yes I think I feel like that's one
thing<00:05:14.850><c> that</c><00:05:15.270><c> is</c><00:05:15.720><c> like</c><00:05:16.560><c> would</c><00:05:17.010><c> be</c><00:05:17.160><c> really</c>

00:05:17.390 --> 00:05:17.400 align:start position:0%
thing that is like would be really
 

00:05:17.400 --> 00:05:19.640 align:start position:0%
thing that is like would be really
helpful<00:05:17.639><c> to</c><00:05:17.850><c> have</c><00:05:18.150><c> like</c><00:05:18.330><c> a</c><00:05:18.360><c> compiler</c><00:05:19.080><c> level</c>

00:05:19.640 --> 00:05:19.650 align:start position:0%
helpful to have like a compiler level
 

00:05:19.650 --> 00:05:21.260 align:start position:0%
helpful to have like a compiler level
support<00:05:19.950><c> for</c><00:05:20.130><c> like</c><00:05:20.250><c> import</c><00:05:20.700><c> the</c><00:05:20.910><c> code</c><00:05:21.060><c> that</c>

00:05:21.260 --> 00:05:21.270 align:start position:0%
support for like import the code that
 

00:05:21.270 --> 00:05:24.140 align:start position:0%
support for like import the code that
has<00:05:21.389><c> this</c><00:05:21.570><c> hash</c><00:05:22.310><c> rate</c><00:05:23.310><c> right</c><00:05:23.880><c> because</c>

00:05:24.140 --> 00:05:24.150 align:start position:0%
has this hash rate right because
 

00:05:24.150 --> 00:05:26.480 align:start position:0%
has this hash rate right because
oftentimes<00:05:24.720><c> like</c><00:05:25.169><c> yeah</c><00:05:25.590><c> it's</c><00:05:25.979><c> very</c><00:05:26.190><c> easy</c><00:05:26.400><c> to</c>

00:05:26.480 --> 00:05:26.490 align:start position:0%
oftentimes like yeah it's very easy to
 

00:05:26.490 --> 00:05:28.520 align:start position:0%
oftentimes like yeah it's very easy to
just<00:05:26.669><c> assume</c><00:05:27.060><c> this</c><00:05:27.570><c> is</c><00:05:27.720><c> this</c><00:05:27.930><c> is</c><00:05:28.110><c> fine</c><00:05:28.350><c> it</c>

00:05:28.520 --> 00:05:28.530 align:start position:0%
just assume this is this is fine it
 

00:05:28.530 --> 00:05:30.680 align:start position:0%
just assume this is this is fine it
looks<00:05:28.560><c> like</c><00:05:28.830><c> it</c><00:05:28.919><c> turns</c><00:05:29.160><c> up</c><00:05:29.250><c> Lin</c><00:05:29.490><c> or</c><00:05:29.729><c> ENS</c><00:05:30.240><c> name</c>

00:05:30.680 --> 00:05:30.690 align:start position:0%
looks like it turns up Lin or ENS name
 

00:05:30.690 --> 00:05:31.279 align:start position:0%
looks like it turns up Lin or ENS name
maybe

00:05:31.279 --> 00:05:31.289 align:start position:0%
maybe
 

00:05:31.289 --> 00:05:33.290 align:start position:0%
maybe
so<00:05:31.410><c> the</c><00:05:31.530><c> yeah</c><00:05:31.680><c> import</c><00:05:32.070><c> safe</c><00:05:32.340><c> math</c><00:05:32.580><c> eath</c><00:05:33.030><c> as</c>

00:05:33.290 --> 00:05:33.300 align:start position:0%
so the yeah import safe math eath as
 

00:05:33.300 --> 00:05:35.540 align:start position:0%
so the yeah import safe math eath as
opposed<00:05:33.630><c> to</c><00:05:33.780><c> because</c><00:05:34.530><c> that</c><00:05:34.650><c> you</c><00:05:34.740><c> guys</c><00:05:34.860><c> easily</c>

00:05:35.540 --> 00:05:35.550 align:start position:0%
opposed to because that you guys easily
 

00:05:35.550 --> 00:05:37.850 align:start position:0%
opposed to because that you guys easily
lie<00:05:35.729><c> about</c><00:05:35.970><c> the</c><00:05:36.090><c> hash</c><00:05:36.330><c> it's</c><00:05:36.750><c> well</c><00:05:37.500><c> I</c><00:05:37.530><c> camps</c>

00:05:37.850 --> 00:05:37.860 align:start position:0%
lie about the hash it's well I camps
 

00:05:37.860 --> 00:05:39.920 align:start position:0%
lie about the hash it's well I camps
like<00:05:38.039><c> a</c><00:05:38.100><c> bunch</c><00:05:38.250><c> of</c><00:05:38.310><c> red</c><00:05:38.460><c> I</c><00:05:38.760><c> mean</c><00:05:39.270><c> if</c><00:05:39.389><c> the</c><00:05:39.720><c> tool</c>

00:05:39.920 --> 00:05:39.930 align:start position:0%
like a bunch of red I mean if the tool
 

00:05:39.930 --> 00:05:42.680 align:start position:0%
like a bunch of red I mean if the tool
grabs<00:05:40.410><c> like</c><00:05:41.220><c> something</c><00:05:42.090><c> based</c><00:05:42.300><c> on</c><00:05:42.389><c> the</c><00:05:42.510><c> hash</c>

00:05:42.680 --> 00:05:42.690 align:start position:0%
grabs like something based on the hash
 

00:05:42.690 --> 00:05:43.909 align:start position:0%
grabs like something based on the hash
like<00:05:42.990><c> I'm</c><00:05:43.139><c> thinking</c><00:05:43.229><c> if</c><00:05:43.530><c> I'm</c><00:05:43.620><c> looking</c><00:05:43.740><c> at</c>

00:05:43.909 --> 00:05:43.919 align:start position:0%
like I'm thinking if I'm looking at
 

00:05:43.919 --> 00:05:45.740 align:start position:0%
like I'm thinking if I'm looking at
ether<00:05:44.220><c> scan</c><00:05:44.460><c> I</c><00:05:44.490><c> see</c><00:05:44.820><c> like</c><00:05:44.940><c> import</c><00:05:45.389><c> some</c><00:05:45.539><c> crazy</c>

00:05:45.740 --> 00:05:45.750 align:start position:0%
ether scan I see like import some crazy
 

00:05:45.750 --> 00:05:47.839 align:start position:0%
ether scan I see like import some crazy
I'm<00:05:46.289><c> gonna</c><00:05:46.410><c> trust</c><00:05:46.680><c> this</c><00:05:46.950><c> is</c><00:05:47.130><c> safe</c><00:05:47.310><c> map</c><00:05:47.520><c> and</c><00:05:47.760><c> not</c>

00:05:47.839 --> 00:05:47.849 align:start position:0%
I'm gonna trust this is safe map and not
 

00:05:47.849 --> 00:05:49.430 align:start position:0%
I'm gonna trust this is safe map and not
some<00:05:48.090><c> sort</c><00:05:48.240><c> of</c><00:05:48.360><c> oh</c><00:05:48.510><c> yeah</c><00:05:48.870><c> but</c><00:05:49.050><c> it</c><00:05:49.110><c> says</c><00:05:49.229><c> safe</c>

00:05:49.430 --> 00:05:49.440 align:start position:0%
some sort of oh yeah but it says safe
 

00:05:49.440 --> 00:05:50.960 align:start position:0%
some sort of oh yeah but it says safe
math<00:05:49.650><c> dot</c><00:05:49.860><c> eath</c><00:05:50.099><c> I</c><00:05:50.310><c> have</c><00:05:50.430><c> more</c><00:05:50.610><c> faith</c><00:05:50.789><c> that</c>

00:05:50.960 --> 00:05:50.970 align:start position:0%
math dot eath I have more faith that
 

00:05:50.970 --> 00:05:54.140 align:start position:0%
math dot eath I have more faith that
it's<00:05:51.120><c> like</c><00:05:51.270><c> so</c><00:05:51.870><c> I</c><00:05:51.900><c> think</c><00:05:52.220><c> eath</c><00:05:53.220><c> p.m.</c><00:05:53.610><c> is</c><00:05:53.820><c> trying</c>

00:05:54.140 --> 00:05:54.150 align:start position:0%
it's like so I think eath p.m. is trying
 

00:05:54.150 --> 00:05:56.089 align:start position:0%
it's like so I think eath p.m. is trying
to<00:05:54.360><c> accomplish</c><00:05:54.960><c> this</c><00:05:55.380><c> sort</c><00:05:55.560><c> of</c><00:05:55.620><c> thing</c><00:05:55.830><c> and</c>

00:05:56.089 --> 00:05:56.099 align:start position:0%
to accomplish this sort of thing and
 

00:05:56.099 --> 00:05:57.890 align:start position:0%
to accomplish this sort of thing and
with<00:05:56.340><c> some</c><00:05:56.610><c> compiler</c><00:05:57.030><c> integration</c><00:05:57.720><c> that</c>

00:05:57.890 --> 00:05:57.900 align:start position:0%
with some compiler integration that
 

00:05:57.900 --> 00:06:00.070 align:start position:0%
with some compiler integration that
would<00:05:58.080><c> be</c><00:05:58.200><c> a</c><00:05:58.229><c> good</c><00:05:58.440><c> starting</c><00:05:58.889><c> parade</c>

00:06:00.070 --> 00:06:00.080 align:start position:0%
would be a good starting parade
 

00:06:00.080 --> 00:06:04.640 align:start position:0%
would be a good starting parade
so<00:06:01.310><c> here's</c><00:06:02.310><c> the</c><00:06:02.490><c> ERC</c><00:06:02.760><c> xx</c><00:06:03.530><c> implementation</c><00:06:04.530><c> of</c>

00:06:04.640 --> 00:06:04.650 align:start position:0%
so here's the ERC xx implementation of
 

00:06:04.650 --> 00:06:07.400 align:start position:0%
so here's the ERC xx implementation of
the<00:06:04.710><c> specification</c><00:06:05.400><c> and</c><00:06:05.900><c> so</c><00:06:06.900><c> I'd</c><00:06:07.020><c> like</c><00:06:07.050><c> to</c><00:06:07.169><c> ask</c>

00:06:07.400 --> 00:06:07.410 align:start position:0%
the specification and so I'd like to ask
 

00:06:07.410 --> 00:06:10.940 align:start position:0%
the specification and so I'd like to ask
you<00:06:07.530><c> guys</c><00:06:08.030><c> and</c><00:06:09.030><c> and</c><00:06:09.990><c> to</c><00:06:10.110><c> give</c><00:06:10.260><c> some</c><00:06:10.410><c> context</c>

00:06:10.940 --> 00:06:10.950 align:start position:0%
you guys and and to give some context
 

00:06:10.950 --> 00:06:13.909 align:start position:0%
you guys and and to give some context
the<00:06:11.250><c> ERC</c><00:06:11.550><c> xx</c><00:06:11.910><c> specification</c><00:06:12.539><c> states</c><00:06:12.840><c> that</c><00:06:13.500><c> the</c>

00:06:13.909 --> 00:06:13.919 align:start position:0%
the ERC xx specification states that the
 

00:06:13.919 --> 00:06:15.650 align:start position:0%
the ERC xx specification states that the
transfer<00:06:14.310><c> method</c><00:06:14.700><c> should</c><00:06:15.060><c> return</c><00:06:15.120><c> a</c><00:06:15.389><c> boolean</c>

00:06:15.650 --> 00:06:15.660 align:start position:0%
transfer method should return a boolean
 

00:06:15.660 --> 00:06:18.020 align:start position:0%
transfer method should return a boolean
whether<00:06:16.080><c> the</c><00:06:16.320><c> transfer</c><00:06:16.979><c> was</c><00:06:17.370><c> successful</c><00:06:17.400><c> or</c>

00:06:18.020 --> 00:06:18.030 align:start position:0%
whether the transfer was successful or
 

00:06:18.030 --> 00:06:20.629 align:start position:0%
whether the transfer was successful or
not<00:06:18.060><c> and</c><00:06:19.020><c> as</c><00:06:19.320><c> you</c><00:06:19.440><c> can</c><00:06:19.560><c> see</c><00:06:19.770><c> and</c><00:06:20.340><c> this</c><00:06:20.460><c> is</c><00:06:20.550><c> quite</c>

00:06:20.629 --> 00:06:20.639 align:start position:0%
not and as you can see and this is quite
 

00:06:20.639 --> 00:06:23.870 align:start position:0%
not and as you can see and this is quite
common<00:06:20.940><c> to</c><00:06:21.180><c> see</c><00:06:21.330><c> that</c><00:06:21.990><c> it</c><00:06:22.800><c> actually</c><00:06:22.880><c> never</c>

00:06:23.870 --> 00:06:23.880 align:start position:0%
common to see that it actually never
 

00:06:23.880 --> 00:06:26.690 align:start position:0%
common to see that it actually never
returns<00:06:24.270><c> false</c><00:06:24.539><c> it</c><00:06:25.289><c> either</c><00:06:25.530><c> returns</c><00:06:26.010><c> true</c><00:06:26.220><c> or</c>

00:06:26.690 --> 00:06:26.700 align:start position:0%
returns false it either returns true or
 

00:06:26.700 --> 00:06:29.089 align:start position:0%
returns false it either returns true or
it<00:06:26.970><c> throws</c><00:06:27.289><c> so</c><00:06:28.289><c> worried</c><00:06:28.500><c> what</c><00:06:28.740><c> it</c><00:06:28.830><c> was</c><00:06:28.919><c> your</c>

00:06:29.089 --> 00:06:29.099 align:start position:0%
it throws so worried what it was your
 

00:06:29.099 --> 00:06:31.040 align:start position:0%
it throws so worried what it was your
guy's<00:06:29.280><c> opinion</c><00:06:29.550><c> would</c><00:06:30.060><c> you</c><00:06:30.090><c> make</c><00:06:30.690><c> a</c><00:06:30.720><c> note</c><00:06:31.020><c> of</c>

00:06:31.040 --> 00:06:31.050 align:start position:0%
guy's opinion would you make a note of
 

00:06:31.050 --> 00:06:32.900 align:start position:0%
guy's opinion would you make a note of
this<00:06:31.320><c> and</c><00:06:31.650><c> in</c><00:06:31.889><c> order</c><00:06:32.250><c> to</c><00:06:32.280><c> do</c><00:06:32.490><c> you</c><00:06:32.610><c> recommend</c>

00:06:32.900 --> 00:06:32.910 align:start position:0%
this and in order to do you recommend
 

00:06:32.910 --> 00:06:34.610 align:start position:0%
this and in order to do you recommend
against<00:06:33.360><c> it</c><00:06:33.450><c> to</c><00:06:33.570><c> for</c><00:06:33.810><c> it</c><00:06:33.900><c> I</c><00:06:34.110><c> would</c><00:06:34.410><c> definitely</c>

00:06:34.610 --> 00:06:34.620 align:start position:0%
against it to for it I would definitely
 

00:06:34.620 --> 00:06:36.320 align:start position:0%
against it to for it I would definitely
make<00:06:34.919><c> no</c><00:06:35.070><c> like</c><00:06:35.340><c> the</c><00:06:35.550><c> problem</c><00:06:35.820><c> is</c><00:06:35.909><c> something</c>

00:06:36.320 --> 00:06:36.330 align:start position:0%
make no like the problem is something
 

00:06:36.330 --> 00:06:38.149 align:start position:0%
make no like the problem is something
another<00:06:36.659><c> contract</c><00:06:37.229><c> might</c><00:06:37.469><c> be</c><00:06:37.590><c> calling</c><00:06:37.919><c> us</c><00:06:38.010><c> to</c>

00:06:38.149 --> 00:06:38.159 align:start position:0%
another contract might be calling us to
 

00:06:38.159 --> 00:06:40.040 align:start position:0%
another contract might be calling us to
do<00:06:38.280><c> something</c><00:06:38.550><c> and</c><00:06:38.789><c> I</c><00:06:38.909><c> Eve</c><00:06:39.030><c> called</c><00:06:39.240><c> cause</c><00:06:39.539><c> that</c>

00:06:40.040 --> 00:06:40.050 align:start position:0%
do something and I Eve called cause that
 

00:06:40.050 --> 00:06:43.189 align:start position:0%
do something and I Eve called cause that
to<00:06:40.319><c> fail</c><00:06:40.500><c> as</c><00:06:41.460><c> a</c><00:06:41.520><c> result</c><00:06:41.940><c> of</c><00:06:42.090><c> you</c><00:06:42.720><c> know</c><00:06:42.810><c> supposed</c>

00:06:43.189 --> 00:06:43.199 align:start position:0%
to fail as a result of you know supposed
 

00:06:43.199 --> 00:06:44.629 align:start position:0%
to fail as a result of you know supposed
to<00:06:43.259><c> return</c><00:06:43.379><c> false</c><00:06:43.650><c> if</c><00:06:43.949><c> it</c><00:06:44.039><c> didn't</c><00:06:44.250><c> work</c><00:06:44.340><c> as</c>

00:06:44.629 --> 00:06:44.639 align:start position:0%
to return false if it didn't work as
 

00:06:44.639 --> 00:06:47.629 align:start position:0%
to return false if it didn't work as
opposed<00:06:44.909><c> to</c><00:06:45.030><c> bail</c><00:06:45.990><c> out</c><00:06:46.199><c> of</c><00:06:46.229><c> the</c><00:06:46.379><c> universe</c><00:06:46.740><c> I'm</c>

00:06:47.629 --> 00:06:47.639 align:start position:0%
opposed to bail out of the universe I'm
 

00:06:47.639 --> 00:06:50.420 align:start position:0%
opposed to bail out of the universe I'm
of<00:06:48.180><c> the</c><00:06:48.389><c> opposite</c><00:06:48.840><c> opinion</c><00:06:49.039><c> ESA</c><00:06:50.039><c> 20</c><00:06:50.310><c> was</c>

00:06:50.420 --> 00:06:50.430 align:start position:0%
of the opposite opinion ESA 20 was
 

00:06:50.430 --> 00:06:51.589 align:start position:0%
of the opposite opinion ESA 20 was
broken<00:06:50.879><c> when</c><00:06:51.060><c> I</c><00:06:51.090><c> said</c><00:06:51.360><c> that</c><00:06:51.509><c> you</c><00:06:51.569><c> should</c>

00:06:51.589 --> 00:06:51.599 align:start position:0%
broken when I said that you should
 

00:06:51.599 --> 00:06:53.450 align:start position:0%
broken when I said that you should
return<00:06:52.020><c> false</c><00:06:52.080><c> and</c><00:06:52.680><c> not</c><00:06:52.710><c> revert</c><00:06:53.159><c> state</c>

00:06:53.450 --> 00:06:53.460 align:start position:0%
return false and not revert state
 

00:06:53.460 --> 00:06:55.249 align:start position:0%
return false and not revert state
changes<00:06:53.970><c> if</c><00:06:54.270><c> you</c><00:06:54.569><c> try</c><00:06:54.810><c> and</c><00:06:54.870><c> do</c><00:06:55.050><c> something</c>

00:06:55.249 --> 00:06:55.259 align:start position:0%
changes if you try and do something
 

00:06:55.259 --> 00:06:59.659 align:start position:0%
changes if you try and do something
illegal<00:06:55.500><c> and</c><00:06:57.590><c> tried</c><00:06:58.590><c> to</c><00:06:58.710><c> fight</c><00:06:58.919><c> to</c><00:06:59.129><c> get</c><00:06:59.250><c> people</c>

00:06:59.659 --> 00:06:59.669 align:start position:0%
illegal and tried to fight to get people
 

00:06:59.669 --> 00:07:03.260 align:start position:0%
illegal and tried to fight to get people
to<00:07:00.000><c> actually</c><00:07:00.659><c> revert</c><00:07:01.169><c> when</c><00:07:02.069><c> you</c><00:07:02.849><c> know</c><00:07:02.970><c> illegal</c>

00:07:03.260 --> 00:07:03.270 align:start position:0%
to actually revert when you know illegal
 

00:07:03.270 --> 00:07:06.820 align:start position:0%
to actually revert when you know illegal
changes<00:07:03.810><c> are</c><00:07:03.900><c> made</c><00:07:04.020><c> because</c><00:07:04.740><c> it's</c><00:07:05.280><c> far</c><00:07:05.520><c> too</c>

00:07:06.820 --> 00:07:06.830 align:start position:0%
changes are made because it's far too
 

00:07:06.830 --> 00:07:10.610 align:start position:0%
changes are made because it's far too
far<00:07:07.830><c> too</c><00:07:07.860><c> error-prone</c><00:07:08.669><c> to</c><00:07:09.360><c> try</c><00:07:09.569><c> and</c><00:07:09.750><c> handle</c>

00:07:10.610 --> 00:07:10.620 align:start position:0%
far too error-prone to try and handle
 

00:07:10.620 --> 00:07:12.850 align:start position:0%
far too error-prone to try and handle
things<00:07:10.949><c> with</c><00:07:11.220><c> an</c><00:07:11.340><c> undo</c><00:07:11.610><c> mechanism</c><00:07:12.150><c> yourself</c>

00:07:12.850 --> 00:07:12.860 align:start position:0%
things with an undo mechanism yourself
 

00:07:12.860 --> 00:07:15.260 align:start position:0%
things with an undo mechanism yourself
rather<00:07:13.860><c> than</c><00:07:14.190><c> relying</c><00:07:14.460><c> on</c><00:07:14.639><c> the</c><00:07:14.789><c> vm's</c>

00:07:15.260 --> 00:07:15.270 align:start position:0%
rather than relying on the vm's
 

00:07:15.270 --> 00:07:17.809 align:start position:0%
rather than relying on the vm's
mechanism<00:07:15.810><c> and</c><00:07:16.050><c> if</c><00:07:16.469><c> the</c><00:07:16.710><c> if</c><00:07:17.159><c> it's</c><00:07:17.460><c> hard</c><00:07:17.669><c> to</c>

00:07:17.809 --> 00:07:17.819 align:start position:0%
mechanism and if the if it's hard to
 

00:07:17.819 --> 00:07:20.390 align:start position:0%
mechanism and if the if it's hard to
handle<00:07:18.000><c> a</c><00:07:18.240><c> return</c><00:07:18.629><c> a</c><00:07:18.930><c> reverse</c><00:07:19.560><c> in</c><00:07:19.919><c> solidity</c>

00:07:20.390 --> 00:07:20.400 align:start position:0%
handle a return a reverse in solidity
 

00:07:20.400 --> 00:07:21.830 align:start position:0%
handle a return a reverse in solidity
then<00:07:20.639><c> it's</c><00:07:20.789><c> a</c><00:07:20.849><c> problem</c><00:07:20.969><c> with</c><00:07:21.180><c> solidity</c><00:07:21.569><c> that</c>

00:07:21.830 --> 00:07:21.840 align:start position:0%
then it's a problem with solidity that
 

00:07:21.840 --> 00:07:24.170 align:start position:0%
then it's a problem with solidity that
we<00:07:21.930><c> should</c><00:07:22.110><c> fix</c><00:07:22.460><c> well</c><00:07:23.460><c> I</c><00:07:23.520><c> think</c><00:07:23.759><c> it's</c><00:07:24.030><c> also</c>

00:07:24.170 --> 00:07:24.180 align:start position:0%
we should fix well I think it's also
 

00:07:24.180 --> 00:07:29.240 align:start position:0%
we should fix well I think it's also
just<00:07:24.530><c> it's</c><00:07:25.530><c> probably</c><00:07:26.099><c> better</c><00:07:26.310><c> for</c><00:07:27.560><c> the</c><00:07:28.560><c> next</c>

00:07:29.240 --> 00:07:29.250 align:start position:0%
just it's probably better for the next
 

00:07:29.250 --> 00:07:31.490 align:start position:0%
just it's probably better for the next
at<00:07:29.759><c> least</c><00:07:29.789><c> the</c><00:07:30.180><c> next</c><00:07:30.419><c> year</c><00:07:30.599><c> or</c><00:07:30.810><c> two</c><00:07:30.840><c> to</c><00:07:31.289><c> just</c>

00:07:31.490 --> 00:07:31.500 align:start position:0%
at least the next year or two to just
 

00:07:31.500 --> 00:07:33.890 align:start position:0%
at least the next year or two to just
use<00:07:31.889><c> the</c><00:07:32.159><c> throw</c><00:07:32.400><c> pattern</c><00:07:32.729><c> just</c><00:07:33.060><c> because</c><00:07:33.360><c> you</c>

00:07:33.890 --> 00:07:33.900 align:start position:0%
use the throw pattern just because you
 

00:07:33.900 --> 00:07:35.420 align:start position:0%
use the throw pattern just because you
know<00:07:34.680><c> I</c><00:07:34.710><c> don't</c><00:07:34.919><c> think</c><00:07:35.069><c> you</c><00:07:35.129><c> literally</c>

00:07:35.420 --> 00:07:35.430 align:start position:0%
know I don't think you literally
 

00:07:35.430 --> 00:07:37.249 align:start position:0%
know I don't think you literally
wouldn't<00:07:35.789><c> have</c><00:07:35.879><c> enough</c><00:07:36.060><c> gas</c><00:07:36.270><c> for</c><00:07:36.300><c> non-trivial</c>

00:07:37.249 --> 00:07:37.259 align:start position:0%
wouldn't have enough gas for non-trivial
 

00:07:37.259 --> 00:07:39.950 align:start position:0%
wouldn't have enough gas for non-trivial
contracts<00:07:38.129><c> to</c><00:07:38.340><c> do</c><00:07:38.460><c> try</c><00:07:38.669><c> accepted</c><00:07:39.060><c> locks</c><00:07:39.270><c> right</c>

00:07:39.950 --> 00:07:39.960 align:start position:0%
contracts to do try accepted locks right
 

00:07:39.960 --> 00:07:42.619 align:start position:0%
contracts to do try accepted locks right
like<00:07:40.139><c> the</c><00:07:40.560><c> amount</c><00:07:40.800><c> of</c><00:07:40.860><c> checking</c><00:07:41.370><c> I</c><00:07:41.610><c> mean</c><00:07:41.789><c> it's</c>

00:07:42.619 --> 00:07:42.629 align:start position:0%
like the amount of checking I mean it's
 

00:07:42.629 --> 00:07:44.480 align:start position:0%
like the amount of checking I mean it's
it's<00:07:42.900><c> already</c><00:07:43.139><c> a</c><00:07:43.169><c> nightmare</c><00:07:43.740><c> to</c><00:07:44.130><c> do</c><00:07:44.250><c> try</c>

00:07:44.480 --> 00:07:44.490 align:start position:0%
it's already a nightmare to do try
 

00:07:44.490 --> 00:07:47.300 align:start position:0%
it's already a nightmare to do try
accept<00:07:44.819><c> walks</c><00:07:45.150><c> in</c><00:07:45.479><c> in</c><00:07:46.110><c> normal</c><00:07:46.500><c> software</c><00:07:46.919><c> if</c>

00:07:47.300 --> 00:07:47.310 align:start position:0%
accept walks in in normal software if
 

00:07:47.310 --> 00:07:48.379 align:start position:0%
accept walks in in normal software if
you're<00:07:47.669><c> trying</c><00:07:47.819><c> to</c><00:07:47.880><c> do</c><00:07:47.969><c> with</c><00:07:48.090><c> all</c><00:07:48.180><c> the</c>

00:07:48.379 --> 00:07:48.389 align:start position:0%
you're trying to do with all the
 

00:07:48.389 --> 00:07:49.790 align:start position:0%
you're trying to do with all the
constraints<00:07:48.810><c> of</c><00:07:48.870><c> the</c><00:07:48.900><c> blockchain</c><00:07:49.169><c> and</c>

00:07:49.790 --> 00:07:49.800 align:start position:0%
constraints of the blockchain and
 

00:07:49.800 --> 00:07:53.480 align:start position:0%
constraints of the blockchain and
of<00:07:50.400><c> the</c><00:07:50.789><c> EVM</c><00:07:51.180><c> and</c><00:07:51.479><c> and</c><00:07:51.630><c> like</c><00:07:52.199><c> the</c><00:07:53.159><c> amount</c><00:07:53.310><c> of</c>

00:07:53.480 --> 00:07:53.490 align:start position:0%
of the EVM and and like the amount of
 

00:07:53.490 --> 00:07:55.129 align:start position:0%
of the EVM and and like the amount of
sub<00:07:53.940><c> solidity</c><00:07:54.270><c> doesn't</c><00:07:54.599><c> support</c><00:07:54.870><c> out</c><00:07:54.990><c> of</c><00:07:55.020><c> the</c>

00:07:55.129 --> 00:07:55.139 align:start position:0%
sub solidity doesn't support out of the
 

00:07:55.139 --> 00:07:57.950 align:start position:0%
sub solidity doesn't support out of the
box<00:07:55.199><c> is</c><00:07:55.680><c> I</c><00:07:56.159><c> think</c><00:07:56.550><c> the</c><00:07:56.729><c> amount</c><00:07:56.940><c> of</c><00:07:57.060><c> errors</c><00:07:57.360><c> will</c>

00:07:57.950 --> 00:07:57.960 align:start position:0%
box is I think the amount of errors will
 

00:07:57.960 --> 00:08:00.559 align:start position:0%
box is I think the amount of errors will
go<00:07:58.080><c> up</c><00:07:58.229><c> a</c><00:07:58.349><c> lot</c><00:07:58.500><c> and</c><00:07:58.740><c> I</c><00:07:59.039><c> think</c><00:07:59.099><c> yeah</c><00:07:59.340><c> the</c><00:07:59.610><c> ERC</c><00:08:00.180><c> 20</c>

00:08:00.559 --> 00:08:00.569 align:start position:0%
go up a lot and I think yeah the ERC 20
 

00:08:00.569 --> 00:08:02.570 align:start position:0%
go up a lot and I think yeah the ERC 20
standard<00:08:00.930><c> was</c><00:08:01.050><c> a</c><00:08:01.080><c> bit</c><00:08:01.259><c> messy</c><00:08:02.039><c> because</c><00:08:02.130><c> i</c><00:08:02.430><c> mean</c>

00:08:02.570 --> 00:08:02.580 align:start position:0%
standard was a bit messy because i mean
 

00:08:02.580 --> 00:08:05.120 align:start position:0%
standard was a bit messy because i mean
like<00:08:03.300><c> this</c><00:08:03.779><c> could</c><00:08:03.960><c> only</c><00:08:04.080><c> ever</c><00:08:04.319><c> return</c><00:08:04.800><c> true</c>

00:08:05.120 --> 00:08:05.130 align:start position:0%
like this could only ever return true
 

00:08:05.130 --> 00:08:06.409 align:start position:0%
like this could only ever return true
right<00:08:05.550><c> I</c><00:08:05.580><c> mean</c><00:08:05.819><c> this</c><00:08:05.909><c> is</c><00:08:06.029><c> never</c><00:08:06.240><c> going</c><00:08:06.389><c> to</c>

00:08:06.409 --> 00:08:06.419 align:start position:0%
right I mean this is never going to
 

00:08:06.419 --> 00:08:09.469 align:start position:0%
right I mean this is never going to
return<00:08:06.630><c> false</c><00:08:06.900><c> most</c><00:08:07.139><c> contracts</c><00:08:07.710><c> do</c><00:08:07.830><c> that</c><00:08:08.479><c> so</c>

00:08:09.469 --> 00:08:09.479 align:start position:0%
return false most contracts do that so
 

00:08:09.479 --> 00:08:12.409 align:start position:0%
return false most contracts do that so
like<00:08:09.690><c> why</c><00:08:10.169><c> even</c><00:08:10.409><c> have</c><00:08:10.710><c> abilene</c><00:08:11.219><c> at</c><00:08:11.340><c> all</c><00:08:11.490><c> well</c>

00:08:12.409 --> 00:08:12.419 align:start position:0%
like why even have abilene at all well
 

00:08:12.419 --> 00:08:14.330 align:start position:0%
like why even have abilene at all well
the<00:08:12.449><c> original</c><00:08:12.779><c> idea</c><00:08:13.349><c> was</c><00:08:13.590><c> that</c><00:08:13.650><c> it</c><00:08:13.979><c> shouldn't</c>

00:08:14.330 --> 00:08:14.340 align:start position:0%
the original idea was that it shouldn't
 

00:08:14.340 --> 00:08:16.129 align:start position:0%
the original idea was that it shouldn't
even<00:08:14.460><c> throw</c><00:08:14.849><c> that</c><00:08:15.060><c> should</c><00:08:15.270><c> return</c><00:08:15.509><c> false</c><00:08:15.569><c> if</c>

00:08:16.129 --> 00:08:16.139 align:start position:0%
even throw that should return false if
 

00:08:16.139 --> 00:08:17.749 align:start position:0%
even throw that should return false if
you<00:08:16.289><c> tried</c><00:08:16.500><c> to</c><00:08:16.620><c> transfer</c><00:08:17.009><c> more</c><00:08:17.190><c> tokens</c><00:08:17.550><c> than</c>

00:08:17.749 --> 00:08:17.759 align:start position:0%
you tried to transfer more tokens than
 

00:08:17.759 --> 00:08:19.730 align:start position:0%
you tried to transfer more tokens than
you<00:08:17.819><c> add</c><00:08:17.940><c> for</c><00:08:18.210><c> instance</c><00:08:18.289><c> and</c><00:08:19.289><c> I</c><00:08:19.409><c> think</c><00:08:19.590><c> that's</c>

00:08:19.730 --> 00:08:19.740 align:start position:0%
you add for instance and I think that's
 

00:08:19.740 --> 00:08:20.779 align:start position:0%
you add for instance and I think that's
broken<00:08:20.129><c> yeah</c><00:08:20.310><c> I</c><00:08:20.400><c> feel</c><00:08:20.520><c> like</c><00:08:20.610><c> I've</c><00:08:20.729><c> been</c>

00:08:20.779 --> 00:08:20.789 align:start position:0%
broken yeah I feel like I've been
 

00:08:20.789 --> 00:08:24.140 align:start position:0%
broken yeah I feel like I've been
overthrown<00:08:21.150><c> but</c><00:08:21.539><c> I</c><00:08:21.569><c> mean</c><00:08:22.009><c> mymy</c><00:08:23.009><c> Argan</c><00:08:23.610><c> is</c><00:08:23.669><c> even</c>

00:08:24.140 --> 00:08:24.150 align:start position:0%
overthrown but I mean mymy Argan is even
 

00:08:24.150 --> 00:08:25.999 align:start position:0%
overthrown but I mean mymy Argan is even
the<00:08:24.240><c> specific</c><00:08:24.449><c> specification</c><00:08:25.289><c> kind</c><00:08:25.469><c> of</c><00:08:25.590><c> sucks</c>

00:08:25.999 --> 00:08:26.009 align:start position:0%
the specific specification kind of sucks
 

00:08:26.009 --> 00:08:27.529 align:start position:0%
the specific specification kind of sucks
we<00:08:26.400><c> should</c><00:08:26.550><c> still</c><00:08:26.729><c> follow</c><00:08:26.909><c> the</c><00:08:27.000><c> specification</c>

00:08:27.529 --> 00:08:27.539 align:start position:0%
we should still follow the specification
 

00:08:27.539 --> 00:08:30.740 align:start position:0%
we should still follow the specification
and<00:08:27.779><c> make</c><00:08:28.080><c> an</c><00:08:28.229><c> ER</c><00:08:28.500><c> C</c><00:08:28.789><c> 20</c><00:08:29.789><c> plus</c><00:08:30.090><c> something</c><00:08:30.479><c> that</c>

00:08:30.740 --> 00:08:30.750 align:start position:0%
and make an ER C 20 plus something that
 

00:08:30.750 --> 00:08:33.740 align:start position:0%
and make an ER C 20 plus something that
says<00:08:30.930><c> don't</c><00:08:31.319><c> do</c><00:08:31.469><c> dumb</c><00:08:31.650><c> things</c><00:08:31.680><c> so</c><00:08:32.510><c> so</c><00:08:33.510><c> to</c><00:08:33.570><c> be</c>

00:08:33.740 --> 00:08:33.750 align:start position:0%
says don't do dumb things so so to be
 

00:08:33.750 --> 00:08:36.110 align:start position:0%
says don't do dumb things so so to be
fair<00:08:33.779><c> I</c><00:08:34.020><c> don't</c><00:08:34.169><c> think</c><00:08:34.500><c> this</c><00:08:34.620><c> is</c><00:08:35.120><c> non-compliant</c>

00:08:36.110 --> 00:08:36.120 align:start position:0%
fair I don't think this is non-compliant
 

00:08:36.120 --> 00:08:38.060 align:start position:0%
fair I don't think this is non-compliant
because<00:08:36.449><c> the</c><00:08:36.659><c> ERC</c><00:08:37.019><c> 20</c><00:08:37.380><c> doesn't</c><00:08:37.649><c> say</c><00:08:37.829><c> anything</c>

00:08:38.060 --> 00:08:38.070 align:start position:0%
because the ERC 20 doesn't say anything
 

00:08:38.070 --> 00:08:39.800 align:start position:0%
because the ERC 20 doesn't say anything
about<00:08:38.279><c> whether</c><00:08:38.640><c> you</c><00:08:38.820><c> can</c><00:08:38.940><c> throw</c><00:08:39.209><c> or</c><00:08:39.390><c> not</c>

00:08:39.800 --> 00:08:39.810 align:start position:0%
about whether you can throw or not
 

00:08:39.810 --> 00:08:43.159 align:start position:0%
about whether you can throw or not
if<00:08:40.440><c> you</c><00:08:40.680><c> return</c><00:08:41.750><c> successfully</c><00:08:42.750><c> you</c><00:08:42.870><c> have</c><00:08:42.899><c> to</c>

00:08:43.159 --> 00:08:43.169 align:start position:0%
if you return successfully you have to
 

00:08:43.169 --> 00:08:46.340 align:start position:0%
if you return successfully you have to
return<00:08:43.380><c> true</c><00:08:43.970><c> but</c><00:08:44.970><c> throwing</c><00:08:45.630><c> in</c><00:08:45.779><c> a</c><00:08:45.870><c> case</c><00:08:46.140><c> of</c><00:08:46.290><c> a</c>

00:08:46.340 --> 00:08:46.350 align:start position:0%
return true but throwing in a case of a
 

00:08:46.350 --> 00:08:48.139 align:start position:0%
return true but throwing in a case of a
failure<00:08:46.560><c> isn't</c><00:08:46.829><c> prohibited</c><00:08:47.399><c> that's</c><00:08:47.760><c> very</c><00:08:48.000><c> and</c>

00:08:48.139 --> 00:08:48.149 align:start position:0%
failure isn't prohibited that's very and
 

00:08:48.149 --> 00:08:51.560 align:start position:0%
failure isn't prohibited that's very and
then<00:08:48.300><c> like</c><00:08:48.510><c> on</c><00:08:49.190><c> the</c><00:08:50.190><c> this</c><00:08:50.520><c> is</c><00:08:50.579><c> this</c><00:08:51.120><c> is</c><00:08:51.329><c> like</c><00:08:51.540><c> a</c>

00:08:51.560 --> 00:08:51.570 align:start position:0%
then like on the this is this is like a
 

00:08:51.570 --> 00:08:53.540 align:start position:0%
then like on the this is this is like a
real<00:08:51.930><c> or</c><00:08:52.380><c> has</c><00:08:52.620><c> been</c><00:08:52.740><c> a</c><00:08:52.829><c> real</c><00:08:52.980><c> bad</c><00:08:53.160><c> problem</c><00:08:53.310><c> to</c>

00:08:53.540 --> 00:08:53.550 align:start position:0%
real or has been a real bad problem to
 

00:08:53.550 --> 00:08:54.410 align:start position:0%
real or has been a real bad problem to
compile

00:08:54.410 --> 00:08:54.420 align:start position:0%
compile
 

00:08:54.420 --> 00:08:57.650 align:start position:0%
compile
it's<00:08:54.900><c> not</c><00:08:55.350><c> strict</c><00:08:55.770><c> enough</c><00:08:55.860><c> like</c><00:08:56.400><c> you</c><00:08:56.700><c> could</c>

00:08:57.650 --> 00:08:57.660 align:start position:0%
it's not strict enough like you could
 

00:08:57.660 --> 00:09:00.440 align:start position:0%
it's not strict enough like you could
for<00:08:57.870><c> example</c><00:08:57.950><c> right</c><00:08:58.950><c> at</c><00:08:59.550><c> least</c><00:08:59.670><c> up</c><00:09:00.090><c> until</c><00:09:00.270><c> very</c>

00:09:00.440 --> 00:09:00.450 align:start position:0%
for example right at least up until very
 

00:09:00.450 --> 00:09:01.670 align:start position:0%
for example right at least up until very
recently<00:09:00.930><c> you</c><00:09:01.080><c> could</c><00:09:01.200><c> write</c><00:09:01.380><c> this</c><00:09:01.500><c> function</c>

00:09:01.670 --> 00:09:01.680 align:start position:0%
recently you could write this function
 

00:09:01.680 --> 00:09:03.350 align:start position:0%
recently you could write this function
without<00:09:01.980><c> ever</c><00:09:02.190><c> returning</c><00:09:02.580><c> true</c><00:09:02.790><c> right</c><00:09:03.180><c> so</c>

00:09:03.350 --> 00:09:03.360 align:start position:0%
without ever returning true right so
 

00:09:03.360 --> 00:09:05.150 align:start position:0%
without ever returning true right so
like<00:09:03.480><c> take</c><00:09:03.900><c> away</c><00:09:03.990><c> that</c><00:09:04.230><c> return</c><00:09:04.500><c> true</c><00:09:04.740><c> and</c><00:09:04.920><c> it</c>

00:09:05.150 --> 00:09:05.160 align:start position:0%
like take away that return true and it
 

00:09:05.160 --> 00:09:07.340 align:start position:0%
like take away that return true and it
would<00:09:05.250><c> still</c><00:09:05.460><c> like</c><00:09:06.150><c> it</c><00:09:06.450><c> would</c><00:09:06.630><c> just</c><00:09:06.870><c> put</c><00:09:07.320><c> a</c>

00:09:07.340 --> 00:09:07.350 align:start position:0%
would still like it would just put a
 

00:09:07.350 --> 00:09:08.540 align:start position:0%
would still like it would just put a
deer<00:09:07.530><c> on</c><00:09:07.560><c> the</c><00:09:07.710><c> sack</c><00:09:07.950><c> basically</c><00:09:08.400><c> right</c>

00:09:08.540 --> 00:09:08.550 align:start position:0%
deer on the sack basically right
 

00:09:08.550 --> 00:09:11.660 align:start position:0%
deer on the sack basically right
silently<00:09:09.140><c> false</c><00:09:10.140><c> and</c><00:09:10.470><c> then</c><00:09:10.620><c> between</c><00:09:11.070><c> compiler</c>

00:09:11.660 --> 00:09:11.670 align:start position:0%
silently false and then between compiler
 

00:09:11.670 --> 00:09:14.230 align:start position:0%
silently false and then between compiler
version<00:09:12.050><c> 4.2</c><00:09:13.050><c> two</c><00:09:13.200><c> and</c><00:09:13.410><c> four</c><00:09:13.590><c> point</c><00:09:13.830><c> two</c><00:09:13.980><c> three</c>

00:09:14.230 --> 00:09:14.240 align:start position:0%
version 4.2 two and four point two three
 

00:09:14.240 --> 00:09:16.850 align:start position:0%
version 4.2 two and four point two three
like<00:09:15.240><c> a</c><00:09:15.300><c> bug</c><00:09:15.630><c> was</c><00:09:15.840><c> fixed</c><00:09:16.080><c> with</c><00:09:16.350><c> a</c><00:09:16.380><c> call</c><00:09:16.620><c> data</c>

00:09:16.850 --> 00:09:16.860 align:start position:0%
like a bug was fixed with a call data
 

00:09:16.860 --> 00:09:19.010 align:start position:0%
like a bug was fixed with a call data
return<00:09:17.250><c> where</c><00:09:18.120><c> I</c><00:09:18.150><c> guess</c><00:09:18.300><c> like</c><00:09:18.480><c> it</c><00:09:18.720><c> was</c><00:09:18.840><c> made</c>

00:09:19.010 --> 00:09:19.020 align:start position:0%
return where I guess like it was made
 

00:09:19.020 --> 00:09:21.020 align:start position:0%
return where I guess like it was made
more<00:09:19.200><c> strict</c><00:09:19.590><c> so</c><00:09:19.950><c> now</c><00:09:20.100><c> those</c><00:09:20.310><c> contracts</c>

00:09:21.020 --> 00:09:21.030 align:start position:0%
more strict so now those contracts
 

00:09:21.030 --> 00:09:23.870 align:start position:0%
more strict so now those contracts
actually<00:09:21.720><c> returned</c><00:09:22.110><c> zero</c><00:09:22.590><c> in</c><00:09:22.770><c> under</c><00:09:23.460><c> wire</c>

00:09:23.870 --> 00:09:23.880 align:start position:0%
actually returned zero in under wire
 

00:09:23.880 --> 00:09:25.700 align:start position:0%
actually returned zero in under wire
yeah<00:09:24.210><c> so</c><00:09:24.420><c> the</c><00:09:24.570><c> output</c><00:09:24.930><c> area</c><00:09:25.260><c> is</c><00:09:25.380><c> cleared</c>

00:09:25.700 --> 00:09:25.710 align:start position:0%
yeah so the output area is cleared
 

00:09:25.710 --> 00:09:27.710 align:start position:0%
yeah so the output area is cleared
before<00:09:26.190><c> the</c><00:09:26.310><c> call</c><00:09:26.550><c> is</c><00:09:26.700><c> made</c><00:09:26.880><c> right</c><00:09:27.330><c> yeah</c><00:09:27.510><c> and</c>

00:09:27.710 --> 00:09:27.720 align:start position:0%
before the call is made right yeah and
 

00:09:27.720 --> 00:09:29.900 align:start position:0%
before the call is made right yeah and
earlier<00:09:28.170><c> the</c><00:09:28.320><c> output</c><00:09:28.650><c> area</c><00:09:28.920><c> was</c><00:09:29.100><c> they</c><00:09:29.760><c> input</c>

00:09:29.900 --> 00:09:29.910 align:start position:0%
earlier the output area was they input
 

00:09:29.910 --> 00:09:32.300 align:start position:0%
earlier the output area was they input
ordered<00:09:30.510><c> the</c><00:09:30.630><c> recited</c><00:09:31.080><c> there</c><00:09:31.200><c> and</c><00:09:31.650><c> because</c><00:09:32.100><c> so</c>

00:09:32.300 --> 00:09:32.310 align:start position:0%
ordered the recited there and because so
 

00:09:32.310 --> 00:09:33.500 align:start position:0%
ordered the recited there and because so
this<00:09:32.490><c> because</c><00:09:32.760><c> the</c><00:09:32.850><c> compiler</c><00:09:33.120><c> was</c><00:09:33.360><c> too</c>

00:09:33.500 --> 00:09:33.510 align:start position:0%
this because the compiler was too
 

00:09:33.510 --> 00:09:35.600 align:start position:0%
this because the compiler was too
lenient<00:09:33.690><c> and</c><00:09:34.050><c> now</c><00:09:34.170><c> like</c><00:09:34.500><c> within</c><00:09:35.130><c> if</c><00:09:35.370><c> you</c>

00:09:35.600 --> 00:09:35.610 align:start position:0%
lenient and now like within if you
 

00:09:35.610 --> 00:09:37.610 align:start position:0%
lenient and now like within if you
compile<00:09:36.120><c> a</c><00:09:36.420><c> checking</c><00:09:36.960><c> contract</c><00:09:37.440><c> that</c>

00:09:37.610 --> 00:09:37.620 align:start position:0%
compile a checking contract that
 

00:09:37.620 --> 00:09:39.680 align:start position:0%
compile a checking contract that
requires<00:09:37.860><c> wraps</c><00:09:38.850><c> to</c><00:09:38.970><c> require</c><00:09:39.270><c> around</c><00:09:39.600><c> the</c>

00:09:39.680 --> 00:09:39.690 align:start position:0%
requires wraps to require around the
 

00:09:39.690 --> 00:09:41.900 align:start position:0%
requires wraps to require around the
token<00:09:40.050><c> transfer</c><00:09:40.950><c> and</c><00:09:41.160><c> that</c><00:09:41.190><c> transfer</c><00:09:41.790><c> goes</c>

00:09:41.900 --> 00:09:41.910 align:start position:0%
token transfer and that transfer goes
 

00:09:41.910 --> 00:09:44.060 align:start position:0%
token transfer and that transfer goes
through<00:09:41.940><c> okay</c><00:09:42.360><c> but</c><00:09:42.990><c> it</c><00:09:43.110><c> returns</c><00:09:43.320><c> zero</c><00:09:43.620><c> now</c>

00:09:44.060 --> 00:09:44.070 align:start position:0%
through okay but it returns zero now
 

00:09:44.070 --> 00:09:46.520 align:start position:0%
through okay but it returns zero now
like<00:09:44.790><c> it</c><00:09:44.940><c> properly</c><00:09:45.360><c> allocates</c><00:09:45.780><c> at</c><00:09:45.930><c> zero</c><00:09:46.140><c> then</c>

00:09:46.520 --> 00:09:46.530 align:start position:0%
like it properly allocates at zero then
 

00:09:46.530 --> 00:09:49.010 align:start position:0%
like it properly allocates at zero then
the<00:09:46.860><c> like</c><00:09:47.850><c> the</c><00:09:47.970><c> contract</c><00:09:48.270><c> will</c><00:09:48.360><c> throw</c><00:09:48.630><c> even</c>

00:09:49.010 --> 00:09:49.020 align:start position:0%
the like the contract will throw even
 

00:09:49.020 --> 00:09:50.210 align:start position:0%
the like the contract will throw even
though<00:09:49.200><c> it's</c><00:09:49.710><c> actually</c><00:09:49.860><c> gone</c><00:09:50.160><c> through</c>

00:09:50.210 --> 00:09:50.220 align:start position:0%
though it's actually gone through
 

00:09:50.220 --> 00:09:58.270 align:start position:0%
though it's actually gone through
correctly<00:09:52.370><c> don't</c><00:09:56.000><c> quickening</c><00:09:57.000><c> here</c><00:09:57.240><c> is</c><00:09:57.360><c> the</c>

00:09:58.270 --> 00:09:58.280 align:start position:0%
correctly don't quickening here is the
 

00:09:58.280 --> 00:10:02.150 align:start position:0%
correctly don't quickening here is the
one<00:09:59.280><c> lines</c><00:09:59.700><c> 123</c><00:10:00.330><c> and</c><00:10:00.480><c> 124</c><00:10:01.080><c> I</c><00:10:01.440><c> think</c><00:10:01.770><c> I</c><00:10:01.890><c> can't</c>

00:10:02.150 --> 00:10:02.160 align:start position:0%
one lines 123 and 124 I think I can't
 

00:10:02.160 --> 00:10:04.700 align:start position:0%
one lines 123 and 124 I think I can't
quite<00:10:02.340><c> make</c><00:10:02.550><c> out</c><00:10:02.730><c> the</c><00:10:02.910><c> alignment</c><00:10:03.470><c> 124</c><00:10:04.470><c> and</c><00:10:04.500><c> 125</c>

00:10:04.700 --> 00:10:04.710 align:start position:0%
quite make out the alignment 124 and 125
 

00:10:04.710 --> 00:10:09.380 align:start position:0%
quite make out the alignment 124 and 125
are<00:10:05.310><c> redundant</c><00:10:06.770><c> if</c><00:10:07.770><c> if</c><00:10:08.370><c> the</c><00:10:08.730><c> sorry</c>

00:10:09.380 --> 00:10:09.390 align:start position:0%
are redundant if if the sorry
 

00:10:09.390 --> 00:10:13.160 align:start position:0%
are redundant if if the sorry
like<00:10:10.070><c> 124</c><00:10:11.070><c> isn't</c><00:10:11.520><c> the</c><00:10:12.030><c> check</c><00:10:12.270><c> that</c><00:10:12.540><c> the</c><00:10:12.750><c> value</c>

00:10:13.160 --> 00:10:13.170 align:start position:0%
like 124 isn't the check that the value
 

00:10:13.170 --> 00:10:14.510 align:start position:0%
like 124 isn't the check that the value
is<00:10:13.290><c> less</c><00:10:13.440><c> than</c><00:10:13.470><c> the</c><00:10:13.620><c> balances</c><00:10:14.100><c> is</c><00:10:14.220><c> also</c>

00:10:14.510 --> 00:10:14.520 align:start position:0%
is less than the balances is also
 

00:10:14.520 --> 00:10:22.700 align:start position:0%
is less than the balances is also
enforced<00:10:14.910><c> by</c><00:10:15.060><c> safe</c><00:10:15.300><c> meth</c><00:10:21.530><c> depends</c><00:10:22.530><c> on</c><00:10:22.620><c> the</c>

00:10:22.700 --> 00:10:22.710 align:start position:0%
enforced by safe meth depends on the
 

00:10:22.710 --> 00:10:25.850 align:start position:0%
enforced by safe meth depends on the
version<00:10:22.830><c> of</c><00:10:23.040><c> safe</c><00:10:23.190><c> manner</c><00:10:23.430><c> using</c><00:10:24.410><c> okay</c><00:10:25.410><c> yep</c>

00:10:25.850 --> 00:10:25.860 align:start position:0%
version of safe manner using okay yep
 

00:10:25.860 --> 00:10:29.930 align:start position:0%
version of safe manner using okay yep
yep<00:10:27.320><c> for</c><00:10:28.320><c> the</c><00:10:28.410><c> room</c><00:10:28.860><c> to</c><00:10:29.070><c> hear</c><00:10:29.250><c> it</c><00:10:29.370><c> so</c><00:10:29.550><c> the</c>

00:10:29.930 --> 00:10:29.940 align:start position:0%
yep for the room to hear it so the
 

00:10:29.940 --> 00:10:33.590 align:start position:0%
yep for the room to hear it so the
comment<00:10:30.270><c> was</c><00:10:30.300><c> the</c><00:10:30.600><c> the</c><00:10:30.960><c> safe</c><00:10:31.350><c> mouth</c><00:10:32.600><c> faison</c>

00:10:33.590 --> 00:10:33.600 align:start position:0%
comment was the the safe mouth faison
 

00:10:33.600 --> 00:10:42.110 align:start position:0%
comment was the the safe mouth faison
revert<00:10:34.520><c> assert</c><00:10:35.520><c> as</c><00:10:35.790><c> art</c><00:10:36.230><c> right</c><00:10:40.910><c> it's</c><00:10:41.910><c> a</c><00:10:42.000><c> good</c>

00:10:42.110 --> 00:10:42.120 align:start position:0%
revert assert as art right it's a good
 

00:10:42.120 --> 00:10:43.940 align:start position:0%
revert assert as art right it's a good
question<00:10:42.330><c> like</c><00:10:42.810><c> it's</c><00:10:43.170><c> kind</c><00:10:43.380><c> of</c><00:10:43.410><c> a</c><00:10:43.500><c> philosophy</c>

00:10:43.940 --> 00:10:43.950 align:start position:0%
question like it's kind of a philosophy
 

00:10:43.950 --> 00:10:46.130 align:start position:0%
question like it's kind of a philosophy
question<00:10:44.340><c> and</c><00:10:44.550><c> are</c><00:10:45.120><c> you</c><00:10:45.270><c> using</c><00:10:45.540><c> safe</c><00:10:45.870><c> math</c>

00:10:46.130 --> 00:10:46.140 align:start position:0%
question and are you using safe math
 

00:10:46.140 --> 00:10:49.220 align:start position:0%
question and are you using safe math
because<00:10:46.500><c> you</c><00:10:46.650><c> believe</c><00:10:46.980><c> it</c><00:10:47.160><c> should</c><00:10:47.370><c> like</c><00:10:48.230><c> throw</c>

00:10:49.220 --> 00:10:49.230 align:start position:0%
because you believe it should like throw
 

00:10:49.230 --> 00:10:52.220 align:start position:0%
because you believe it should like throw
in<00:10:49.530><c> the</c><00:10:49.650><c> case</c><00:10:49.830><c> of</c><00:10:50.070><c> a</c><00:10:50.270><c> honest</c><00:10:51.270><c> mistake</c><00:10:51.390><c> like</c><00:10:52.050><c> the</c>

00:10:52.220 --> 00:10:52.230 align:start position:0%
in the case of a honest mistake like the
 

00:10:52.230 --> 00:10:54.590 align:start position:0%
in the case of a honest mistake like the
idea<00:10:52.530><c> that</c><00:10:52.590><c> if</c><00:10:53.250><c> say</c><00:10:53.580><c> if</c><00:10:53.730><c> a</c><00:10:53.850><c> safe</c><00:10:54.030><c> method</c><00:10:54.390><c> method</c>

00:10:54.590 --> 00:10:54.600 align:start position:0%
idea that if say if a safe method method
 

00:10:54.600 --> 00:10:56.720 align:start position:0%
idea that if say if a safe method method
ever<00:10:54.810><c> fails</c><00:10:55.140><c> it</c><00:10:55.410><c> represents</c><00:10:55.950><c> an</c><00:10:56.040><c> error</c><00:10:56.460><c> in</c><00:10:56.640><c> the</c>

00:10:56.720 --> 00:10:56.730 align:start position:0%
ever fails it represents an error in the
 

00:10:56.730 --> 00:10:59.420 align:start position:0%
ever fails it represents an error in the
contract<00:10:57.180><c> or</c><00:10:57.420><c> are</c><00:10:57.960><c> you</c><00:10:58.110><c> doing</c><00:10:58.410><c> it</c><00:10:58.530><c> because</c><00:10:59.220><c> you</c>

00:10:59.420 --> 00:10:59.430 align:start position:0%
contract or are you doing it because you
 

00:10:59.430 --> 00:11:01.490 align:start position:0%
contract or are you doing it because you
want<00:10:59.640><c> it</c><00:10:59.760><c> to</c><00:10:59.910><c> automatically</c><00:11:00.450><c> catch</c><00:11:00.690><c> overflows</c>

00:11:01.490 --> 00:11:01.500 align:start position:0%
want it to automatically catch overflows
 

00:11:01.500 --> 00:11:05.090 align:start position:0%
want it to automatically catch overflows
for<00:11:01.830><c> you</c><00:11:02.000><c> and</c><00:11:03.000><c> and</c><00:11:03.480><c> one</c><00:11:04.230><c> philosophy</c><00:11:04.740><c> leads</c><00:11:04.920><c> to</c>

00:11:05.090 --> 00:11:05.100 align:start position:0%
for you and and one philosophy leads to
 

00:11:05.100 --> 00:11:09.699 align:start position:0%
for you and and one philosophy leads to
reverse<00:11:05.400><c> and</c><00:11:05.640><c> the</c><00:11:05.700><c> others</c><00:11:05.940><c> were</c><00:11:06.060><c> assert</c>

00:11:09.699 --> 00:11:09.709 align:start position:0%
 
 

00:11:09.709 --> 00:11:11.900 align:start position:0%
 
so<00:11:10.709><c> the</c><00:11:10.860><c> comment</c><00:11:11.190><c> from</c><00:11:11.279><c> the</c><00:11:11.399><c> audience's</c><00:11:11.880><c> I</c>

00:11:11.900 --> 00:11:11.910 align:start position:0%
so the comment from the audience's I
 

00:11:11.910 --> 00:11:18.139 align:start position:0%
so the comment from the audience's I
remove<00:11:12.690><c> the</c><00:11:13.700><c> safe</c><00:11:14.700><c> math</c><00:11:14.970><c> check</c><00:11:15.540><c> on</c><00:11:15.779><c> line</c><00:11:17.149><c> 128</c>

00:11:18.139 --> 00:11:18.149 align:start position:0%
remove the safe math check on line 128
 

00:11:18.149 --> 00:11:23.329 align:start position:0%
remove the safe math check on line 128
and<00:11:18.570><c> I</c><00:11:18.660><c> start</c><00:11:18.930><c> do</c><00:11:19.110><c> a</c><00:11:19.140><c> regular</c><00:11:19.730><c> -</c><00:11:22.010><c> yeah</c><00:11:23.010><c> so</c><00:11:23.220><c> these</c>

00:11:23.329 --> 00:11:23.339 align:start position:0%
and I start do a regular - yeah so these
 

00:11:23.339 --> 00:11:25.850 align:start position:0%
and I start do a regular - yeah so these
are<00:11:23.519><c> basically</c><00:11:23.850><c> the</c><00:11:23.970><c> same</c><00:11:24.209><c> check</c><00:11:24.450><c> and</c><00:11:24.860><c> we'll</c>

00:11:25.850 --> 00:11:25.860 align:start position:0%
are basically the same check and we'll
 

00:11:25.860 --> 00:11:28.280 align:start position:0%
are basically the same check and we'll
the<00:11:26.040><c> the</c><00:11:26.610><c> one</c><00:11:26.820><c> on</c><00:11:26.940><c> 129</c><00:11:27.540><c> cheeks</c><00:11:27.930><c> against</c>

00:11:28.280 --> 00:11:28.290 align:start position:0%
the the one on 129 cheeks against
 

00:11:28.290 --> 00:11:36.019 align:start position:0%
the the one on 129 cheeks against
overflow<00:11:28.769><c> so</c><00:11:29.250><c> 128</c><00:11:30.149><c> could</c><00:11:30.480><c> succeed</c><00:11:30.839><c> in</c><00:11:31.220><c> yeah</c><00:11:35.029><c> so</c>

00:11:36.019 --> 00:11:36.029 align:start position:0%
overflow so 128 could succeed in yeah so
 

00:11:36.029 --> 00:11:38.240 align:start position:0%
overflow so 128 could succeed in yeah so
and<00:11:36.329><c> one</c><00:11:36.690><c> important</c><00:11:37.140><c> stuff</c><00:11:37.410><c> to</c><00:11:37.680><c> see</c><00:11:37.980><c> that</c><00:11:38.160><c> they</c>

00:11:38.240 --> 00:11:38.250 align:start position:0%
and one important stuff to see that they
 

00:11:38.250 --> 00:11:40.430 align:start position:0%
and one important stuff to see that they
got<00:11:38.399><c> right</c><00:11:38.610><c> here</c><00:11:38.850><c> in</c><00:11:38.970><c> this</c><00:11:39.089><c> section</c><00:11:39.329><c> is</c><00:11:39.990><c> that</c>

00:11:40.430 --> 00:11:40.440 align:start position:0%
got right here in this section is that
 

00:11:40.440 --> 00:11:42.860 align:start position:0%
got right here in this section is that
you<00:11:40.649><c> do</c><00:11:40.829><c> the</c><00:11:41.310><c> subtraction</c><00:11:42.000><c> in</c><00:11:42.420><c> addition</c><00:11:42.779><c> in</c>

00:11:42.860 --> 00:11:42.870 align:start position:0%
you do the subtraction in addition in
 

00:11:42.870 --> 00:11:45.560 align:start position:0%
you do the subtraction in addition in
the<00:11:42.959><c> right</c><00:11:43.110><c> order</c><00:11:43.380><c> so</c><00:11:44.250><c> that</c><00:11:44.279><c> you</c><00:11:44.640><c> don't</c><00:11:44.820><c> like</c><00:11:45.360><c> I</c>

00:11:45.560 --> 00:11:45.570 align:start position:0%
the right order so that you don't like I
 

00:11:45.570 --> 00:11:48.920 align:start position:0%
the right order so that you don't like I
want<00:11:45.839><c> to</c><00:11:45.870><c> transfer</c><00:11:46.519><c> ten</c><00:11:47.519><c> tokens</c><00:11:47.970><c> from</c><00:11:48.690><c> myself</c>

00:11:48.920 --> 00:11:48.930 align:start position:0%
want to transfer ten tokens from myself
 

00:11:48.930 --> 00:11:51.139 align:start position:0%
want to transfer ten tokens from myself
to<00:11:49.320><c> myself</c><00:11:49.500><c> and</c><00:11:50.010><c> then</c><00:11:50.160><c> you</c><00:11:50.310><c> add</c><00:11:50.640><c> it</c><00:11:51.000><c> to</c>

00:11:51.139 --> 00:11:51.149 align:start position:0%
to myself and then you add it to
 

00:11:51.149 --> 00:11:54.710 align:start position:0%
to myself and then you add it to
yourself<00:11:51.570><c> and</c><00:11:51.750><c> then</c><00:11:51.870><c> you</c><00:11:52.640><c> tend</c><00:11:53.640><c> to</c><00:11:53.880><c> it</c><00:11:54.000><c> tell</c><00:11:54.600><c> it</c>

00:11:54.710 --> 00:11:54.720 align:start position:0%
yourself and then you tend to it tell it
 

00:11:54.720 --> 00:11:56.060 align:start position:0%
yourself and then you tend to it tell it
wrong<00:11:54.870><c> so</c><00:11:55.110><c> you</c><00:11:55.170><c> get</c><00:11:55.380><c> the</c><00:11:55.500><c> double</c>

00:11:56.060 --> 00:11:56.070 align:start position:0%
wrong so you get the double
 

00:11:56.070 --> 00:11:57.889 align:start position:0%
wrong so you get the double
if<00:11:56.700><c> you</c><00:11:56.850><c> do</c><00:11:56.940><c> it</c><00:11:57.029><c> the</c><00:11:57.120><c> other</c><00:11:57.149><c> way</c><00:11:57.300><c> around</c><00:11:57.570><c> and</c>

00:11:57.889 --> 00:11:57.899 align:start position:0%
if you do it the other way around and
 

00:11:57.899 --> 00:11:59.420 align:start position:0%
if you do it the other way around and
you<00:11:57.959><c> have</c><00:11:58.200><c> zero</c><00:11:58.380><c> tokens</c><00:11:58.890><c> you</c><00:11:59.040><c> can</c><00:11:59.190><c> still</c>

00:11:59.420 --> 00:11:59.430 align:start position:0%
you have zero tokens you can still
 

00:11:59.430 --> 00:12:05.470 align:start position:0%
you have zero tokens you can still
transfer<00:11:59.880><c> a</c><00:11:59.910><c> million</c><00:12:00.209><c> tokens</c><00:12:00.570><c> to</c><00:12:00.720><c> yourself</c>

00:12:05.470 --> 00:12:05.480 align:start position:0%
 
 

00:12:05.480 --> 00:12:09.680 align:start position:0%
 
all<00:12:06.480><c> right</c><00:12:06.829><c> let's</c><00:12:07.829><c> move</c><00:12:08.010><c> on</c><00:12:08.190><c> if</c><00:12:08.430><c> there's</c><00:12:09.390><c> any</c>

00:12:09.680 --> 00:12:09.690 align:start position:0%
all right let's move on if there's any
 

00:12:09.690 --> 00:12:11.930 align:start position:0%
all right let's move on if there's any
submissions<00:12:10.589><c> coming</c><00:12:11.430><c> in</c><00:12:11.550><c> while</c><00:12:11.730><c> we're</c>

00:12:11.930 --> 00:12:11.940 align:start position:0%
submissions coming in while we're
 

00:12:11.940 --> 00:12:18.640 align:start position:0%
submissions coming in while we're
talking<00:12:13.910><c> yeah</c><00:12:14.910><c> keep</c><00:12:15.240><c> coming</c><00:12:15.269><c> keep</c><00:12:15.870><c> coming</c>

00:12:18.640 --> 00:12:18.650 align:start position:0%
 
 

00:12:18.650 --> 00:12:23.230 align:start position:0%
 
[Music]

00:12:23.230 --> 00:12:23.240 align:start position:0%
 
 

00:12:23.240 --> 00:12:27.110 align:start position:0%
 
so<00:12:24.240><c> it's</c><00:12:24.449><c> it's</c><00:12:25.079><c> not</c><00:12:25.320><c> a</c><00:12:26.089><c> necessarily</c><00:12:27.089><c> a</c>

00:12:27.110 --> 00:12:27.120 align:start position:0%
so it's it's not a necessarily a
 

00:12:27.120 --> 00:12:29.930 align:start position:0%
so it's it's not a necessarily a
security<00:12:27.570><c> issue</c><00:12:27.720><c> but</c><00:12:28.050><c> it</c><00:12:28.140><c> is</c><00:12:28.170><c> a</c><00:12:28.610><c> events</c><00:12:29.610><c> issue</c>

00:12:29.930 --> 00:12:29.940 align:start position:0%
security issue but it is a events issue
 

00:12:29.940 --> 00:12:32.150 align:start position:0%
security issue but it is a events issue
if<00:12:30.209><c> you</c><00:12:30.810><c> add</c><00:12:31.079><c> to</c><00:12:31.320><c> the</c><00:12:31.410><c> balance</c><00:12:31.709><c> before</c><00:12:32.070><c> you</c>

00:12:32.150 --> 00:12:32.160 align:start position:0%
if you add to the balance before you
 

00:12:32.160 --> 00:12:33.829 align:start position:0%
if you add to the balance before you
subtract<00:12:32.610><c> and</c><00:12:32.910><c> you</c><00:12:32.940><c> start</c><00:12:33.360><c> off</c><00:12:33.449><c> with</c><00:12:33.600><c> a</c><00:12:33.660><c> zero</c>

00:12:33.829 --> 00:12:33.839 align:start position:0%
subtract and you start off with a zero
 

00:12:33.839 --> 00:12:35.150 align:start position:0%
subtract and you start off with a zero
balance<00:12:34.079><c> and</c><00:12:34.500><c> you're</c><00:12:34.620><c> transferring</c><00:12:35.010><c> to</c>

00:12:35.150 --> 00:12:35.160 align:start position:0%
balance and you're transferring to
 

00:12:35.160 --> 00:12:37.310 align:start position:0%
balance and you're transferring to
yourself<00:12:35.490><c> then</c><00:12:36.269><c> you</c><00:12:36.570><c> add</c><00:12:36.690><c> a</c><00:12:36.720><c> million</c><00:12:37.019><c> tokens</c>

00:12:37.310 --> 00:12:37.320 align:start position:0%
yourself then you add a million tokens
 

00:12:37.320 --> 00:12:38.449 align:start position:0%
yourself then you add a million tokens
to<00:12:37.410><c> your</c><00:12:37.529><c> balance</c><00:12:37.800><c> and</c><00:12:37.949><c> then</c><00:12:38.070><c> you</c><00:12:38.130><c> subtract</c>

00:12:38.449 --> 00:12:38.459 align:start position:0%
to your balance and then you subtract
 

00:12:38.459 --> 00:12:39.710 align:start position:0%
to your balance and then you subtract
two<00:12:38.550><c> million</c><00:12:38.790><c> tokens</c><00:12:39.089><c> from</c><00:12:39.149><c> your</c><00:12:39.329><c> balance</c><00:12:39.510><c> and</c>

00:12:39.710 --> 00:12:39.720 align:start position:0%
two million tokens from your balance and
 

00:12:39.720 --> 00:12:41.600 align:start position:0%
two million tokens from your balance and
that<00:12:39.779><c> succeeds</c><00:12:40.260><c> and</c><00:12:40.589><c> it</c><00:12:41.010><c> emits</c><00:12:41.279><c> an</c><00:12:41.399><c> event</c>

00:12:41.600 --> 00:12:41.610 align:start position:0%
that succeeds and it emits an event
 

00:12:41.610 --> 00:12:43.009 align:start position:0%
that succeeds and it emits an event
saying<00:12:41.940><c> you</c><00:12:42.149><c> seen</c><00:12:42.329><c> yourself</c><00:12:42.449><c> a</c><00:12:42.750><c> million</c>

00:12:43.009 --> 00:12:43.019 align:start position:0%
saying you seen yourself a million
 

00:12:43.019 --> 00:12:46.160 align:start position:0%
saying you seen yourself a million
tokens<00:12:43.440><c> which</c><00:12:44.370><c> shouldn't</c><00:12:44.640><c> be</c><00:12:44.699><c> possible</c><00:12:45.170><c> but</c>

00:12:46.160 --> 00:12:46.170 align:start position:0%
tokens which shouldn't be possible but
 

00:12:46.170 --> 00:12:49.400 align:start position:0%
tokens which shouldn't be possible but
it<00:12:46.350><c> wasn't</c><00:12:46.769><c> there</c><00:12:46.980><c> act</c><00:12:47.220><c> also</c><00:12:47.880><c> a</c><00:12:48.360><c> case</c><00:12:49.140><c> of</c><00:12:49.290><c> one</c>

00:12:49.400 --> 00:12:49.410 align:start position:0%
it wasn't there act also a case of one
 

00:12:49.410 --> 00:12:52.460 align:start position:0%
it wasn't there act also a case of one
of<00:12:49.470><c> these</c><00:12:49.560><c> tokens</c><00:12:49.769><c> where</c><00:12:50.130><c> you</c><00:12:50.250><c> could</c><00:12:51.470><c> increase</c>

00:12:52.460 --> 00:12:52.470 align:start position:0%
of these tokens where you could increase
 

00:12:52.470 --> 00:12:57.740 align:start position:0%
of these tokens where you could increase
your<00:12:52.589><c> own</c><00:12:53.149><c> balance</c><00:12:55.880><c> so</c><00:12:56.880><c> the</c><00:12:57.089><c> consequence</c>

00:12:57.740 --> 00:12:57.750 align:start position:0%
your own balance so the consequence
 

00:12:57.750 --> 00:13:00.439 align:start position:0%
your own balance so the consequence
would<00:12:57.930><c> be</c><00:12:57.990><c> that</c><00:12:58.140><c> it</c><00:12:58.709><c> could</c><00:12:58.980><c> be</c><00:12:59.160><c> read</c><00:12:59.699><c> to</c><00:12:59.730><c> fake</c>

00:13:00.439 --> 00:13:00.449 align:start position:0%
would be that it could be read to fake
 

00:13:00.449 --> 00:13:03.650 align:start position:0%
would be that it could be read to fake
overflow<00:13:01.260><c> if</c><00:13:02.040><c> you</c><00:13:02.370><c> first</c><00:13:02.970><c> increase</c><00:13:03.510><c> the</c>

00:13:03.650 --> 00:13:03.660 align:start position:0%
overflow if you first increase the
 

00:13:03.660 --> 00:13:05.750 align:start position:0%
overflow if you first increase the
balance<00:13:03.810><c> and</c><00:13:04.230><c> you</c><00:13:05.010><c> if</c><00:13:05.220><c> you're</c><00:13:05.430><c> transferring</c>

00:13:05.750 --> 00:13:05.760 align:start position:0%
balance and you if you're transferring
 

00:13:05.760 --> 00:13:07.310 align:start position:0%
balance and you if you're transferring
from<00:13:06.029><c> you</c><00:13:06.180><c> to</c><00:13:06.570><c> yourself</c><00:13:06.930><c> then</c><00:13:07.170><c> you</c>

00:13:07.310 --> 00:13:07.320 align:start position:0%
from you to yourself then you
 

00:13:07.320 --> 00:13:08.810 align:start position:0%
from you to yourself then you
effectively<00:13:07.740><c> double</c><00:13:08.190><c> your</c><00:13:08.310><c> balance</c><00:13:08.579><c> and</c><00:13:08.730><c> this</c>

00:13:08.810 --> 00:13:08.820 align:start position:0%
effectively double your balance and this
 

00:13:08.820 --> 00:13:12.050 align:start position:0%
effectively double your balance and this
kind<00:13:09.060><c> of</c><00:13:09.120><c> our</c><00:13:09.240><c> flow</c><00:13:09.620><c> even</c><00:13:10.620><c> though</c><00:13:11.160><c> that</c><00:13:11.370><c> this</c>

00:13:12.050 --> 00:13:12.060 align:start position:0%
kind of our flow even though that this
 

00:13:12.060 --> 00:13:13.550 align:start position:0%
kind of our flow even though that this
is<00:13:12.209><c> impossible</c><00:13:12.449><c> because</c><00:13:12.990><c> the</c><00:13:13.110><c> total</c><00:13:13.290><c> number</c>

00:13:13.550 --> 00:13:13.560 align:start position:0%
is impossible because the total number
 

00:13:13.560 --> 00:13:15.949 align:start position:0%
is impossible because the total number
of<00:13:13.589><c> tokens</c><00:13:13.829><c> is</c><00:13:14.250><c> rather</c><00:13:14.640><c> than</c><00:13:14.850><c> maximum</c><00:13:15.569><c> value</c>

00:13:15.949 --> 00:13:15.959 align:start position:0%
of tokens is rather than maximum value
 

00:13:15.959 --> 00:13:17.660 align:start position:0%
of tokens is rather than maximum value
but<00:13:16.319><c> I</c><00:13:16.440><c> wanted</c><00:13:16.770><c> to</c><00:13:16.860><c> comment</c><00:13:17.069><c> about</c><00:13:17.370><c> the</c><00:13:17.520><c> safe</c>

00:13:17.660 --> 00:13:17.670 align:start position:0%
but I wanted to comment about the safe
 

00:13:17.670 --> 00:13:21.610 align:start position:0%
but I wanted to comment about the safe
Martin<00:13:17.880><c> fermentation</c><00:13:18.540><c> actually</c><00:13:19.470><c> it's</c><00:13:19.620><c> um</c>

00:13:21.610 --> 00:13:21.620 align:start position:0%
Martin fermentation actually it's um
 

00:13:21.620 --> 00:13:24.800 align:start position:0%
Martin fermentation actually it's um
that<00:13:22.620><c> style</c><00:13:22.950><c> there</c><00:13:23.880><c> I</c><00:13:24.150><c> mean</c><00:13:24.480><c> this</c><00:13:24.600><c> one</c>

00:13:24.800 --> 00:13:24.810 align:start position:0%
that style there I mean this one
 

00:13:24.810 --> 00:13:28.490 align:start position:0%
that style there I mean this one
implementation<00:13:25.080><c> top</c><00:13:26.240><c> because</c><00:13:27.240><c> it</c><00:13:27.690><c> allows</c><00:13:28.170><c> our</c>

00:13:28.490 --> 00:13:28.500 align:start position:0%
implementation top because it allows our
 

00:13:28.500 --> 00:13:31.730 align:start position:0%
implementation top because it allows our
flow<00:13:28.860><c> actually</c><00:13:29.010><c> to</c><00:13:29.510><c> happen</c><00:13:30.510><c> and</c><00:13:30.750><c> then</c><00:13:31.440><c> try</c><00:13:31.710><c> to</c>

00:13:31.730 --> 00:13:31.740 align:start position:0%
flow actually to happen and then try to
 

00:13:31.740 --> 00:13:33.830 align:start position:0%
flow actually to happen and then try to
detect<00:13:32.100><c> it</c><00:13:32.280><c> off</c><00:13:32.370><c> the</c><00:13:32.490><c> worse</c><00:13:32.610><c> no</c><00:13:33.060><c> not</c><00:13:33.330><c> this</c><00:13:33.480><c> but</c>

00:13:33.830 --> 00:13:33.840 align:start position:0%
detect it off the worse no not this but
 

00:13:33.840 --> 00:13:36.350 align:start position:0%
detect it off the worse no not this but
the<00:13:34.110><c> implementation</c><00:13:34.320><c> of</c><00:13:34.770><c> yeah</c><00:13:35.250><c> safe</c><00:13:36.120><c> month</c>

00:13:36.350 --> 00:13:36.360 align:start position:0%
the implementation of yeah safe month
 

00:13:36.360 --> 00:13:39.590 align:start position:0%
the implementation of yeah safe month
right<00:13:36.600><c> because</c><00:13:36.960><c> it's</c><00:13:37.790><c> heavily</c><00:13:38.790><c> relies</c><00:13:39.060><c> on</c><00:13:39.330><c> the</c>

00:13:39.590 --> 00:13:39.600 align:start position:0%
right because it's heavily relies on the
 

00:13:39.600 --> 00:13:41.630 align:start position:0%
right because it's heavily relies on the
particular<00:13:40.050><c> behavior</c><00:13:40.470><c> of</c><00:13:40.650><c> overflow</c><00:13:41.040><c> which</c>

00:13:41.630 --> 00:13:41.640 align:start position:0%
particular behavior of overflow which
 

00:13:41.640 --> 00:13:43.820 align:start position:0%
particular behavior of overflow which
particular<00:13:42.120><c> one</c><00:13:42.300><c> we</c><00:13:42.630><c> talked</c><00:13:42.810><c> about</c><00:13:42.900><c> for</c>

00:13:43.820 --> 00:13:43.830 align:start position:0%
particular one we talked about for
 

00:13:43.830 --> 00:13:46.460 align:start position:0%
particular one we talked about for
example<00:13:44.160><c> this</c><00:13:44.250><c> one</c><00:13:44.540><c> multiplication</c><00:13:45.540><c> right</c><00:13:46.050><c> so</c>

00:13:46.460 --> 00:13:46.470 align:start position:0%
example this one multiplication right so
 

00:13:46.470 --> 00:13:49.430 align:start position:0%
example this one multiplication right so
it<00:13:46.620><c> first</c><00:13:46.920><c> allows</c><00:13:47.720><c> other</c><00:13:48.720><c> flow</c><00:13:48.960><c> to</c><00:13:49.020><c> happen</c>

00:13:49.430 --> 00:13:49.440 align:start position:0%
it first allows other flow to happen
 

00:13:49.440 --> 00:13:52.520 align:start position:0%
it first allows other flow to happen
client<00:13:50.340><c> 58</c><00:13:50.730><c> right</c><00:13:51.030><c> and</c><00:13:51.330><c> then</c><00:13:51.900><c> tries</c><00:13:52.140><c> to</c><00:13:52.260><c> detect</c>

00:13:52.520 --> 00:13:52.530 align:start position:0%
client 58 right and then tries to detect
 

00:13:52.530 --> 00:13:55.280 align:start position:0%
client 58 right and then tries to detect
it<00:13:52.830><c> afterwards</c><00:13:53.460><c> heavily</c><00:13:54.450><c> relying</c><00:13:54.750><c> on</c><00:13:54.930><c> what</c>

00:13:55.280 --> 00:13:55.290 align:start position:0%
it afterwards heavily relying on what
 

00:13:55.290 --> 00:13:57.770 align:start position:0%
it afterwards heavily relying on what
exact<00:13:55.650><c> result</c><00:13:55.980><c> so</c><00:13:56.130><c> it's</c><00:13:56.490><c> obvious</c><00:13:56.970><c> that</c><00:13:57.330><c> if</c><00:13:57.510><c> I</c><00:13:57.720><c> /</c>

00:13:57.770 --> 00:13:57.780 align:start position:0%
exact result so it's obvious that if I /
 

00:13:57.780 --> 00:14:01.310 align:start position:0%
exact result so it's obvious that if I /
14<00:13:58.200><c> happened</c><00:13:58.620><c> that</c><00:13:59.010><c> at</c><00:13:59.490><c> Lyon</c><00:13:59.790><c> 59</c><00:14:00.480><c> everything</c>

00:14:01.310 --> 00:14:01.320 align:start position:0%
14 happened that at Lyon 59 everything
 

00:14:01.320 --> 00:14:03.560 align:start position:0%
14 happened that at Lyon 59 everything
will<00:14:01.470><c> be</c><00:14:01.560><c> fine</c><00:14:01.770><c> but</c><00:14:02.130><c> the</c><00:14:02.970><c> opposite</c><00:14:03.390><c> is</c><00:14:03.450><c> not</c>

00:14:03.560 --> 00:14:03.570 align:start position:0%
will be fine but the opposite is not
 

00:14:03.570 --> 00:14:06.440 align:start position:0%
will be fine but the opposite is not
obvious<00:14:04.080><c> I</c><00:14:04.290><c> mean</c><00:14:04.560><c> it's</c><00:14:04.740><c> hard</c><00:14:05.550><c> to</c><00:14:05.880><c> prove</c><00:14:06.090><c> that</c>

00:14:06.440 --> 00:14:06.450 align:start position:0%
obvious I mean it's hard to prove that
 

00:14:06.450 --> 00:14:08.480 align:start position:0%
obvious I mean it's hard to prove that
if<00:14:06.900><c> ever</c><00:14:07.170><c> for</c><00:14:07.200><c> actually</c><00:14:07.860><c> happened</c><00:14:08.190><c> then</c>

00:14:08.480 --> 00:14:08.490 align:start position:0%
if ever for actually happened then
 

00:14:08.490 --> 00:14:12.740 align:start position:0%
if ever for actually happened then
condition<00:14:09.060><c> at</c><00:14:09.150><c> 59</c><00:14:09.810><c> will</c><00:14:10.050><c> be</c><00:14:10.910><c> violated</c><00:14:11.910><c> it's</c>

00:14:12.740 --> 00:14:12.750 align:start position:0%
condition at 59 will be violated it's
 

00:14:12.750 --> 00:14:14.720 align:start position:0%
condition at 59 will be violated it's
not<00:14:12.930><c> that</c><00:14:13.080><c> easy</c><00:14:13.290><c> to</c><00:14:13.980><c> understand</c><00:14:14.400><c> and</c><00:14:14.580><c> do</c><00:14:14.640><c> you</c>

00:14:14.720 --> 00:14:14.730 align:start position:0%
not that easy to understand and do you
 

00:14:14.730 --> 00:14:16.100 align:start position:0%
not that easy to understand and do you
know<00:14:14.850><c> you</c><00:14:15.120><c> need</c><00:14:15.330><c> to</c><00:14:15.450><c> know</c><00:14:15.600><c> the</c><00:14:15.810><c> particular</c>

00:14:16.100 --> 00:14:16.110 align:start position:0%
know you need to know the particular
 

00:14:16.110 --> 00:14:18.170 align:start position:0%
know you need to know the particular
behavior<00:14:16.620><c> of</c><00:14:16.740><c> however</c><00:14:17.160><c> flow</c><00:14:17.370><c> works</c><00:14:17.640><c> I</c><00:14:17.910><c> mean</c>

00:14:18.170 --> 00:14:18.180 align:start position:0%
behavior of however flow works I mean
 

00:14:18.180 --> 00:14:20.770 align:start position:0%
behavior of however flow works I mean
what<00:14:18.480><c> exact</c><00:14:18.810><c> result</c><00:14:19.140><c> will</c><00:14:19.410><c> overflow</c><00:14:19.980><c> return</c>

00:14:20.770 --> 00:14:20.780 align:start position:0%
what exact result will overflow return
 

00:14:20.780 --> 00:14:23.750 align:start position:0%
what exact result will overflow return
right<00:14:21.780><c> so</c><00:14:22.710><c> it's</c><00:14:22.890><c> better</c><00:14:23.070><c> to</c><00:14:23.190><c> check</c><00:14:23.520><c> before</c>

00:14:23.750 --> 00:14:23.760 align:start position:0%
right so it's better to check before
 

00:14:23.760 --> 00:14:26.150 align:start position:0%
right so it's better to check before
doing<00:14:24.750><c> an</c><00:14:24.810><c> actual</c><00:14:25.050><c> multiplication</c><00:14:25.770><c> to</c><00:14:25.950><c> check</c>

00:14:26.150 --> 00:14:26.160 align:start position:0%
doing an actual multiplication to check
 

00:14:26.160 --> 00:14:31.310 align:start position:0%
doing an actual multiplication to check
that<00:14:27.440><c> is</c><00:14:28.440><c> easy</c><00:14:28.740><c> check</c><00:14:29.070><c> I</c><00:14:29.360><c> mean</c><00:14:30.360><c> you</c><00:14:31.170><c> need</c><00:14:31.260><c> to</c>

00:14:31.310 --> 00:14:31.320 align:start position:0%
that is easy check I mean you need to
 

00:14:31.320 --> 00:14:33.770 align:start position:0%
that is easy check I mean you need to
define<00:14:31.800><c> marks</c><00:14:32.430><c> a</c><00:14:32.520><c> lot</c><00:14:32.610><c> value</c><00:14:32.820><c> by</c><00:14:33.120><c> one</c><00:14:33.330><c> argument</c>

00:14:33.770 --> 00:14:33.780 align:start position:0%
define marks a lot value by one argument
 

00:14:33.780 --> 00:14:36.770 align:start position:0%
define marks a lot value by one argument
and<00:14:33.930><c> compared</c><00:14:34.230><c> to</c><00:14:34.320><c> another</c><00:14:34.910><c> and</c><00:14:35.910><c> the</c><00:14:36.630><c> same</c>

00:14:36.770 --> 00:14:36.780 align:start position:0%
and compared to another and the same
 

00:14:36.780 --> 00:14:40.490 align:start position:0%
and compared to another and the same
problem<00:14:37.050><c> I</c><00:14:37.110><c> think</c><00:14:37.170><c> with</c><00:14:37.410><c> addition</c><00:14:39.320><c> but</c><00:14:40.320><c> not</c>

00:14:40.490 --> 00:14:40.500 align:start position:0%
problem I think with addition but not
 

00:14:40.500 --> 00:14:44.350 align:start position:0%
problem I think with addition but not
with<00:14:40.650><c> subtraction</c><00:14:40.920><c> subtraction</c><00:14:41.130><c> is</c><00:14:41.460><c> okay</c><00:14:41.640><c> but</c>

00:14:44.350 --> 00:14:44.360 align:start position:0%
 
 

00:14:44.360 --> 00:14:47.960 align:start position:0%
 
like<00:14:45.360><c> from</c><00:14:45.600><c> a</c><00:14:45.690><c> practical</c><00:14:46.200><c> point</c><00:14:46.560><c> of</c><00:14:46.830><c> view</c><00:14:46.970><c> no</c>

00:14:47.960 --> 00:14:47.970 align:start position:0%
like from a practical point of view no
 

00:14:47.970 --> 00:14:50.000 align:start position:0%
like from a practical point of view no
actually<00:14:48.540><c> the</c><00:14:48.780><c> other</c><00:14:49.200><c> flow</c><00:14:49.470><c> behavior</c><00:14:49.650><c> is</c>

00:14:50.000 --> 00:14:50.010 align:start position:0%
actually the other flow behavior is
 

00:14:50.010 --> 00:14:52.340 align:start position:0%
actually the other flow behavior is
predictable<00:14:50.160><c> at</c><00:14:50.700><c> least</c><00:14:50.880><c> in</c><00:14:51.030><c> nvm</c><00:14:51.540><c> but</c><00:14:52.080><c> it's</c><00:14:52.230><c> not</c>

00:14:52.340 --> 00:14:52.350 align:start position:0%
predictable at least in nvm but it's not
 

00:14:52.350 --> 00:14:54.740 align:start position:0%
predictable at least in nvm but it's not
that<00:14:52.500><c> predictable</c><00:14:52.770><c> in</c><00:14:53.250><c> solidity</c><00:14:53.750><c> right</c>

00:14:54.740 --> 00:14:54.750 align:start position:0%
that predictable in solidity right
 

00:14:54.750 --> 00:14:56.420 align:start position:0%
that predictable in solidity right
because<00:14:55.080><c> for</c><00:14:55.260><c> example</c><00:14:55.350><c> the</c><00:14:55.740><c> division</c><00:14:56.070><c> by</c><00:14:56.190><c> zero</c>

00:14:56.420 --> 00:14:56.430 align:start position:0%
because for example the division by zero
 

00:14:56.430 --> 00:14:58.700 align:start position:0%
because for example the division by zero
behavior<00:14:56.910><c> already</c><00:14:57.900><c> changed</c><00:14:58.260><c> in</c><00:14:58.350><c> solidity</c>

00:14:58.700 --> 00:14:58.710 align:start position:0%
behavior already changed in solidity
 

00:14:58.710 --> 00:15:01.310 align:start position:0%
behavior already changed in solidity
while<00:14:58.980><c> isn't</c><00:14:59.340><c> change</c><00:14:59.670><c> in</c><00:14:59.910><c> Abraham</c><00:15:00.360><c> right</c><00:15:01.110><c> and</c>

00:15:01.310 --> 00:15:01.320 align:start position:0%
while isn't change in Abraham right and
 

00:15:01.320 --> 00:15:04.040 align:start position:0%
while isn't change in Abraham right and
so<00:15:01.770><c> we</c><00:15:01.980><c> can't</c><00:15:02.190><c> guarantee</c><00:15:03.150><c> that</c><00:15:03.450><c> overflow</c>

00:15:04.040 --> 00:15:04.050 align:start position:0%
so we can't guarantee that overflow
 

00:15:04.050 --> 00:15:05.630 align:start position:0%
so we can't guarantee that overflow
behavior<00:15:04.440><c> will</c><00:15:04.620><c> not</c><00:15:04.770><c> change</c><00:15:05.010><c> in</c><00:15:05.160><c> solidity</c><00:15:05.520><c> in</c>

00:15:05.630 --> 00:15:05.640 align:start position:0%
behavior will not change in solidity in
 

00:15:05.640 --> 00:15:07.880 align:start position:0%
behavior will not change in solidity in
the<00:15:05.730><c> future</c><00:15:06.090><c> despite</c><00:15:06.990><c> it</c><00:15:07.170><c> in</c><00:15:07.290><c> EVM</c><00:15:07.650><c> and</c><00:15:07.800><c> will</c>

00:15:07.880 --> 00:15:07.890 align:start position:0%
the future despite it in EVM and will
 

00:15:07.890 --> 00:15:10.400 align:start position:0%
the future despite it in EVM and will
stay<00:15:08.100><c> the</c><00:15:08.220><c> same</c><00:15:08.400><c> but</c><00:15:08.610><c> here</c><00:15:08.880><c> we</c><00:15:09.080><c> rely</c><00:15:10.080><c> on</c><00:15:10.110><c> the</c>

00:15:10.400 --> 00:15:10.410 align:start position:0%
stay the same but here we rely on the
 

00:15:10.410 --> 00:15:13.130 align:start position:0%
stay the same but here we rely on the
particular<00:15:10.800><c> other</c><00:15:11.310><c> blow</c><00:15:11.490><c> behavior</c><00:15:12.140><c> instead</c>

00:15:13.130 --> 00:15:13.140 align:start position:0%
particular other blow behavior instead
 

00:15:13.140 --> 00:15:16.250 align:start position:0%
particular other blow behavior instead
of<00:15:13.350><c> preventing</c><00:15:13.650><c> other</c><00:15:14.220><c> flow</c><00:15:14.430><c> at</c><00:15:14.550><c> all</c><00:15:14.700><c> and</c><00:15:15.540><c> so</c>

00:15:16.250 --> 00:15:16.260 align:start position:0%
of preventing other flow at all and so
 

00:15:16.260 --> 00:15:18.380 align:start position:0%
of preventing other flow at all and so
in<00:15:16.680><c> terms</c><00:15:17.010><c> of</c><00:15:17.130><c> gas</c><00:15:17.310><c> cost</c><00:15:17.520><c> it</c><00:15:17.760><c> will</c><00:15:17.910><c> be</c><00:15:18.030><c> the</c><00:15:18.150><c> same</c>

00:15:18.380 --> 00:15:18.390 align:start position:0%
in terms of gas cost it will be the same
 

00:15:18.390 --> 00:15:20.780 align:start position:0%
in terms of gas cost it will be the same
I<00:15:18.660><c> mean</c><00:15:18.870><c> preventing</c><00:15:19.290><c> overflow</c><00:15:19.680><c> or</c><00:15:19.920><c> detecting</c>

00:15:20.780 --> 00:15:20.790 align:start position:0%
I mean preventing overflow or detecting
 

00:15:20.790 --> 00:15:32.420 align:start position:0%
I mean preventing overflow or detecting
it<00:15:21.000><c> afterwards</c>

00:15:32.420 --> 00:15:32.430 align:start position:0%
 
 

00:15:32.430 --> 00:15:35.480 align:start position:0%
 
so<00:15:33.430><c> I</c><00:15:33.460><c> wanted</c><00:15:33.910><c> to</c><00:15:34.030><c> point</c><00:15:34.180><c> out</c><00:15:34.390><c> something</c><00:15:34.630><c> that</c>

00:15:35.480 --> 00:15:35.490 align:start position:0%
so I wanted to point out something that
 

00:15:35.490 --> 00:15:38.580 align:start position:0%
so I wanted to point out something that
transfer<00:15:36.490><c> from</c><00:15:36.670><c> isn't</c><00:15:37.210><c> doing</c><00:15:37.510><c> which</c><00:15:37.930><c> is</c><00:15:38.230><c> the</c>

00:15:38.580 --> 00:15:38.590 align:start position:0%
transfer from isn't doing which is the
 

00:15:38.590 --> 00:15:40.170 align:start position:0%
transfer from isn't doing which is the
what<00:15:38.980><c> I</c><00:15:39.010><c> consider</c><00:15:39.460><c> at</c><00:15:39.580><c> least</c><00:15:39.610><c> the</c><00:15:39.940><c> anti</c>

00:15:40.170 --> 00:15:40.180 align:start position:0%
what I consider at least the anti
 

00:15:40.180 --> 00:15:42.840 align:start position:0%
what I consider at least the anti
passion<00:15:40.540><c> of</c><00:15:40.690><c> requiring</c><00:15:41.140><c> sorry</c><00:15:42.070><c> not</c><00:15:42.430><c> transfer</c>

00:15:42.840 --> 00:15:42.850 align:start position:0%
passion of requiring sorry not transfer
 

00:15:42.850 --> 00:15:46.170 align:start position:0%
passion of requiring sorry not transfer
from<00:15:43.030><c> approve</c><00:15:43.810><c> of</c><00:15:44.310><c> requiring</c><00:15:45.310><c> someone</c><00:15:45.910><c> to</c><00:15:46.000><c> sit</c>

00:15:46.170 --> 00:15:46.180 align:start position:0%
from approve of requiring someone to sit
 

00:15:46.180 --> 00:15:47.880 align:start position:0%
from approve of requiring someone to sit
there<00:15:46.330><c> approvals</c><00:15:46.720><c> to</c><00:15:46.900><c> zero</c><00:15:47.110><c> before</c><00:15:47.620><c> they</c><00:15:47.740><c> can</c>

00:15:47.880 --> 00:15:47.890 align:start position:0%
there approvals to zero before they can
 

00:15:47.890 --> 00:15:50.250 align:start position:0%
there approvals to zero before they can
set<00:15:48.070><c> them</c><00:15:48.220><c> to</c><00:15:48.340><c> another</c><00:15:48.490><c> value</c><00:15:48.990><c> that</c><00:15:49.990><c> was</c>

00:15:50.250 --> 00:15:50.260 align:start position:0%
set them to another value that was
 

00:15:50.260 --> 00:15:53.520 align:start position:0%
set them to another value that was
mooted<00:15:50.710><c> in</c><00:15:51.000><c> result</c><00:15:52.000><c> fright</c><00:15:52.390><c> of</c><00:15:52.420><c> the</c><00:15:52.990><c> the</c><00:15:53.380><c> issue</c>

00:15:53.520 --> 00:15:53.530 align:start position:0%
mooted in result fright of the the issue
 

00:15:53.530 --> 00:15:56.310 align:start position:0%
mooted in result fright of the the issue
with<00:15:53.950><c> sort</c><00:15:54.940><c> of</c><00:15:55.030><c> front</c><00:15:55.870><c> running</c><00:15:55.960><c> with</c>

00:15:56.310 --> 00:15:56.320 align:start position:0%
with sort of front running with
 

00:15:56.320 --> 00:15:58.920 align:start position:0%
with sort of front running with
transaction<00:15:56.860><c> approvals</c><00:15:57.390><c> and</c><00:15:58.390><c> in</c><00:15:58.600><c> my</c><00:15:58.810><c> opinion</c>

00:15:58.920 --> 00:15:58.930 align:start position:0%
transaction approvals and in my opinion
 

00:15:58.930 --> 00:16:01.530 align:start position:0%
transaction approvals and in my opinion
the<00:15:59.470><c> the</c><00:16:00.280><c> correct</c><00:16:00.550><c> way</c><00:16:00.790><c> to</c><00:16:00.820><c> handle</c><00:16:01.030><c> that</c><00:16:01.300><c> is</c>

00:16:01.530 --> 00:16:01.540 align:start position:0%
the the correct way to handle that is
 

00:16:01.540 --> 00:16:04.440 align:start position:0%
the the correct way to handle that is
for<00:16:01.900><c> end-user</c><00:16:02.440><c> clients</c><00:16:02.980><c> to</c><00:16:03.160><c> seem</c><00:16:03.400><c> to</c><00:16:03.610><c> send</c><00:16:04.330><c> an</c>

00:16:04.440 --> 00:16:04.450 align:start position:0%
for end-user clients to seem to send an
 

00:16:04.450 --> 00:16:06.330 align:start position:0%
for end-user clients to seem to send an
approval<00:16:04.840><c> to</c><00:16:05.020><c> set</c><00:16:05.200><c> it</c><00:16:05.290><c> to</c><00:16:05.410><c> zero</c><00:16:05.590><c> first</c><00:16:05.920><c> and</c>

00:16:06.330 --> 00:16:06.340 align:start position:0%
approval to set it to zero first and
 

00:16:06.340 --> 00:16:08.280 align:start position:0%
approval to set it to zero first and
then<00:16:06.460><c> just</c><00:16:06.670><c> to</c><00:16:06.850><c> reset</c><00:16:07.150><c> it</c><00:16:07.330><c> not</c><00:16:07.600><c> for</c><00:16:07.810><c> contracts</c>

00:16:08.280 --> 00:16:08.290 align:start position:0%
then just to reset it not for contracts
 

00:16:08.290 --> 00:16:12.060 align:start position:0%
then just to reset it not for contracts
to<00:16:08.350><c> enforce</c><00:16:08.650><c> it</c><00:16:08.860><c> because</c><00:16:10.410><c> give</c><00:16:11.410><c> some</c><00:16:11.590><c> context</c>

00:16:12.060 --> 00:16:12.070 align:start position:0%
to enforce it because give some context
 

00:16:12.070 --> 00:16:14.190 align:start position:0%
to enforce it because give some context
on<00:16:12.160><c> that</c><00:16:12.310><c> so</c><00:16:12.520><c> it's</c><00:16:12.910><c> basically</c><00:16:13.240><c> if</c><00:16:13.420><c> if</c><00:16:13.750><c> Nick</c>

00:16:14.190 --> 00:16:14.200 align:start position:0%
on that so it's basically if if Nick
 

00:16:14.200 --> 00:16:16.230 align:start position:0%
on that so it's basically if if Nick
approves<00:16:14.740><c> that</c><00:16:15.070><c> I</c><00:16:15.220><c> can</c><00:16:15.550><c> use</c><00:16:15.760><c> ten</c><00:16:16.060><c> of</c><00:16:16.180><c> his</c>

00:16:16.230 --> 00:16:16.240 align:start position:0%
approves that I can use ten of his
 

00:16:16.240 --> 00:16:19.380 align:start position:0%
approves that I can use ten of his
tokens<00:16:16.720><c> and</c><00:16:17.710><c> then</c><00:16:18.280><c> at</c><00:16:18.430><c> some</c><00:16:18.580><c> later</c><00:16:18.760><c> point</c><00:16:18.910><c> he</c>

00:16:19.380 --> 00:16:19.390 align:start position:0%
tokens and then at some later point he
 

00:16:19.390 --> 00:16:21.210 align:start position:0%
tokens and then at some later point he
says<00:16:19.750><c> no</c><00:16:19.930><c> Martin</c><00:16:20.350><c> you</c><00:16:20.410><c> should</c><00:16:20.590><c> only</c><00:16:20.710><c> be</c><00:16:21.130><c> able</c>

00:16:21.210 --> 00:16:21.220 align:start position:0%
says no Martin you should only be able
 

00:16:21.220 --> 00:16:23.790 align:start position:0%
says no Martin you should only be able
to<00:16:21.340><c> use</c><00:16:21.520><c> spent</c><00:16:22.240><c> five</c><00:16:22.480><c> of</c><00:16:22.630><c> them</c><00:16:22.780><c> and</c><00:16:23.020><c> I</c><00:16:23.260><c> see</c><00:16:23.530><c> his</c>

00:16:23.790 --> 00:16:23.800 align:start position:0%
to use spent five of them and I see his
 

00:16:23.800 --> 00:16:26.430 align:start position:0%
to use spent five of them and I see his
approval<00:16:24.640><c> is</c><00:16:25.180><c> on</c><00:16:25.480><c> the</c><00:16:25.630><c> network</c><00:16:25.990><c> for</c><00:16:26.200><c> five</c>

00:16:26.430 --> 00:16:26.440 align:start position:0%
approval is on the network for five
 

00:16:26.440 --> 00:16:28.800 align:start position:0%
approval is on the network for five
tokens<00:16:26.770><c> so</c><00:16:27.520><c> then</c><00:16:27.760><c> I</c><00:16:27.850><c> quickly</c><00:16:28.120><c> grabbed</c><00:16:28.480><c> the</c><00:16:28.600><c> ten</c>

00:16:28.800 --> 00:16:28.810 align:start position:0%
tokens so then I quickly grabbed the ten
 

00:16:28.810 --> 00:16:31.590 align:start position:0%
tokens so then I quickly grabbed the ten
tokens<00:16:29.020><c> and</c><00:16:29.620><c> his</c><00:16:30.400><c> approval</c><00:16:30.760><c> comes</c><00:16:30.880><c> in</c><00:16:31.120><c> and</c><00:16:31.510><c> I</c>

00:16:31.590 --> 00:16:31.600 align:start position:0%
tokens and his approval comes in and I
 

00:16:31.600 --> 00:16:33.030 align:start position:0%
tokens and his approval comes in and I
can<00:16:31.750><c> go</c><00:16:31.840><c> up</c><00:16:31.870><c> another</c><00:16:32.050><c> five</c><00:16:32.320><c> tokens</c><00:16:32.500><c> then</c><00:16:32.800><c> I</c><00:16:32.890><c> got</c>

00:16:33.030 --> 00:16:33.040 align:start position:0%
can go up another five tokens then I got
 

00:16:33.040 --> 00:16:36.000 align:start position:0%
can go up another five tokens then I got
15<00:16:33.370><c> that's</c><00:16:33.850><c> and</c><00:16:34.540><c> the</c><00:16:35.170><c> correct</c><00:16:35.620><c> way</c><00:16:35.680><c> to</c><00:16:35.770><c> handle</c>

00:16:36.000 --> 00:16:36.010 align:start position:0%
15 that's and the correct way to handle
 

00:16:36.010 --> 00:16:38.490 align:start position:0%
15 that's and the correct way to handle
that<00:16:36.220><c> is</c><00:16:36.280><c> either</c><00:16:36.550><c> with</c><00:16:36.960><c> first</c><00:16:37.960><c> sitting</c><00:16:38.350><c> there</c>

00:16:38.490 --> 00:16:38.500 align:start position:0%
that is either with first sitting there
 

00:16:38.500 --> 00:16:39.990 align:start position:0%
that is either with first sitting there
the<00:16:38.800><c> app</c><00:16:38.950><c> either</c><00:16:39.280><c> first</c><00:16:39.580><c> setting</c><00:16:39.910><c> the</c>

00:16:39.990 --> 00:16:40.000 align:start position:0%
the app either first setting the
 

00:16:40.000 --> 00:16:41.790 align:start position:0%
the app either first setting the
approval<00:16:40.330><c> to</c><00:16:40.420><c> zero</c><00:16:40.630><c> and</c><00:16:40.870><c> then</c><00:16:40.990><c> back</c><00:16:41.230><c> but</c><00:16:41.620><c> not</c>

00:16:41.790 --> 00:16:41.800 align:start position:0%
approval to zero and then back but not
 

00:16:41.800 --> 00:16:44.460 align:start position:0%
approval to zero and then back but not
for<00:16:42.130><c> the</c><00:16:42.450><c> token</c><00:16:43.450><c> contract</c><00:16:43.990><c> to</c><00:16:44.050><c> enforce</c><00:16:44.380><c> that</c>

00:16:44.460 --> 00:16:44.470 align:start position:0%
for the token contract to enforce that
 

00:16:44.470 --> 00:16:46.620 align:start position:0%
for the token contract to enforce that
because<00:16:44.980><c> there</c><00:16:45.130><c> are</c><00:16:45.250><c> for</c><00:16:45.460><c> instance</c><00:16:45.630><c> smart</c>

00:16:46.620 --> 00:16:46.630 align:start position:0%
because there are for instance smart
 

00:16:46.630 --> 00:16:48.090 align:start position:0%
because there are for instance smart
contracts<00:16:47.140><c> that</c><00:16:47.350><c> use</c><00:16:47.470><c> the</c><00:16:47.680><c> approvals</c>

00:16:48.090 --> 00:16:48.100 align:start position:0%
contracts that use the approvals
 

00:16:48.100 --> 00:16:49.680 align:start position:0%
contracts that use the approvals
mechanism<00:16:48.610><c> they're</c><00:16:48.850><c> doing</c><00:16:49.090><c> that</c><00:16:49.210><c> atomically</c>

00:16:49.680 --> 00:16:49.690 align:start position:0%
mechanism they're doing that atomically
 

00:16:49.690 --> 00:16:51.150 align:start position:0%
mechanism they're doing that atomically
in<00:16:49.870><c> a</c><00:16:49.930><c> single</c><00:16:50.230><c> transaction</c><00:16:50.530><c> so</c><00:16:50.920><c> they're</c><00:16:51.040><c> not</c>

00:16:51.150 --> 00:16:51.160 align:start position:0%
in a single transaction so they're not
 

00:16:51.160 --> 00:16:53.370 align:start position:0%
in a single transaction so they're not
vulnerable<00:16:51.430><c> to</c><00:16:51.790><c> this</c><00:16:52.030><c> race</c><00:16:52.270><c> condition</c><00:16:52.780><c> but</c>

00:16:53.370 --> 00:16:53.380 align:start position:0%
vulnerable to this race condition but
 

00:16:53.380 --> 00:16:54.870 align:start position:0%
vulnerable to this race condition but
they<00:16:53.530><c> will</c><00:16:53.680><c> nevertheless</c><00:16:53.950><c> be</c><00:16:53.980><c> broken</c><00:16:54.670><c> by</c><00:16:54.850><c> a</c>

00:16:54.870 --> 00:16:54.880 align:start position:0%
they will nevertheless be broken by a
 

00:16:54.880 --> 00:16:56.940 align:start position:0%
they will nevertheless be broken by a
token<00:16:55.330><c> that</c><00:16:55.360><c> does</c><00:16:55.720><c> this</c><00:16:55.930><c> and</c><00:16:56.230><c> possibly</c>

00:16:56.940 --> 00:16:56.950 align:start position:0%
token that does this and possibly
 

00:16:56.950 --> 00:17:00.000 align:start position:0%
token that does this and possibly
irrevocably<00:16:57.880><c> broken</c><00:16:58.360><c> I</c><00:16:58.540><c> mean</c><00:16:59.530><c> they're</c><00:16:59.710><c> the</c>

00:17:00.000 --> 00:17:00.010 align:start position:0%
irrevocably broken I mean they're the
 

00:17:00.010 --> 00:17:01.710 align:start position:0%
irrevocably broken I mean they're the
contractor<00:17:00.430><c> has</c><00:17:00.550><c> increase</c><00:17:01.030><c> approval</c><00:17:01.480><c> on</c><00:17:01.600><c> the</c>

00:17:01.710 --> 00:17:01.720 align:start position:0%
contractor has increase approval on the
 

00:17:01.720 --> 00:17:03.900 align:start position:0%
contractor has increase approval on the
role<00:17:02.410><c> but</c><00:17:02.590><c> then</c><00:17:02.710><c> it</c><00:17:02.830><c> also</c><00:17:02.950><c> has</c><00:17:03.130><c> approve</c><00:17:03.520><c> I</c><00:17:03.700><c> mean</c>

00:17:03.900 --> 00:17:03.910 align:start position:0%
role but then it also has approve I mean
 

00:17:03.910 --> 00:17:05.550 align:start position:0%
role but then it also has approve I mean
so<00:17:04.449><c> it</c><00:17:04.569><c> would</c><00:17:04.720><c> have</c><00:17:04.780><c> been</c><00:17:04.900><c> great</c><00:17:05.050><c> to</c><00:17:05.079><c> just</c><00:17:05.350><c> know</c>

00:17:05.550 --> 00:17:05.560 align:start position:0%
so it would have been great to just know
 

00:17:05.560 --> 00:17:08.069 align:start position:0%
so it would have been great to just know
how<00:17:05.709><c> to</c><00:17:05.770><c> prove</c><00:17:06.189><c> then</c><00:17:06.819><c> it</c><00:17:06.939><c> wouldn't</c><00:17:07.150><c> be</c><00:17:07.300><c> a</c><00:17:07.329><c> c20</c>

00:17:08.069 --> 00:17:08.079 align:start position:0%
how to prove then it wouldn't be a c20
 

00:17:08.079 --> 00:17:10.650 align:start position:0%
how to prove then it wouldn't be a c20
of<00:17:08.199><c> course</c><00:17:08.910><c> so</c><00:17:09.910><c> there's</c><00:17:10.089><c> an</c><00:17:10.209><c> increase</c>

00:17:10.650 --> 00:17:10.660 align:start position:0%
of course so there's an increase
 

00:17:10.660 --> 00:17:12.600 align:start position:0%
of course so there's an increase
approval<00:17:11.110><c> is</c><00:17:11.260><c> that</c><00:17:11.470><c> standardized</c><00:17:12.100><c> in</c><00:17:12.400><c> a</c><00:17:12.430><c> way</c>

00:17:12.600 --> 00:17:12.610 align:start position:0%
approval is that standardized in a way
 

00:17:12.610 --> 00:17:16.170 align:start position:0%
approval is that standardized in a way
not<00:17:13.150><c> really</c><00:17:13.569><c> it's</c><00:17:14.230><c> a</c><00:17:14.319><c> de</c><00:17:14.530><c> facto</c><00:17:14.560><c> standard</c><00:17:15.180><c> it</c>

00:17:16.170 --> 00:17:16.180 align:start position:0%
not really it's a de facto standard it
 

00:17:16.180 --> 00:17:29.010 align:start position:0%
not really it's a de facto standard it
was<00:17:16.329><c> an</c><00:17:16.480><c> audience</c><00:17:16.810><c> question</c><00:17:17.050><c> -</c><00:17:27.720><c> yes</c><00:17:28.720><c> and</c>

00:17:29.010 --> 00:17:29.020 align:start position:0%
was an audience question - yes and
 

00:17:29.020 --> 00:17:33.810 align:start position:0%
was an audience question - yes and
nothing<00:17:29.650><c> can</c><00:17:30.040><c> stop</c><00:17:30.220><c> you</c><00:17:30.370><c> from</c><00:17:30.400><c> doing</c><00:17:30.580><c> that</c><00:17:32.820><c> it</c>

00:17:33.810 --> 00:17:33.820 align:start position:0%
nothing can stop you from doing that it
 

00:17:33.820 --> 00:17:36.120 align:start position:0%
nothing can stop you from doing that it
prevents<00:17:34.240><c> if</c><00:17:34.450><c> it</c><00:17:34.840><c> was</c><00:17:35.110><c> ten</c><00:17:35.470><c> and</c><00:17:35.740><c> I'm</c><00:17:35.830><c> sitting</c>

00:17:36.120 --> 00:17:36.130 align:start position:0%
prevents if it was ten and I'm sitting
 

00:17:36.130 --> 00:17:38.220 align:start position:0%
prevents if it was ten and I'm sitting
into<00:17:36.250><c> five</c><00:17:36.550><c> then</c><00:17:37.420><c> without</c><00:17:37.750><c> loss</c><00:17:38.080><c> mitigation</c>

00:17:38.220 --> 00:17:38.230 align:start position:0%
into five then without loss mitigation
 

00:17:38.230 --> 00:17:39.900 align:start position:0%
into five then without loss mitigation
you<00:17:38.740><c> could</c><00:17:38.890><c> spend</c><00:17:39.070><c> a</c><00:17:39.160><c> total</c><00:17:39.430><c> of</c><00:17:39.520><c> fifteen</c>

00:17:39.900 --> 00:17:39.910 align:start position:0%
you could spend a total of fifteen
 

00:17:39.910 --> 00:17:40.649 align:start position:0%
you could spend a total of fifteen
because<00:17:40.270><c> you</c><00:17:40.360><c> could</c>

00:17:40.649 --> 00:17:40.659 align:start position:0%
because you could
 

00:17:40.659 --> 00:17:42.719 align:start position:0%
because you could
the<00:17:40.840><c> teen</c><00:17:41.049><c> and</c><00:17:41.320><c> then</c><00:17:41.739><c> I</c><00:17:41.830><c> reappeared</c><00:17:42.369><c> you</c><00:17:42.519><c> for</c>

00:17:42.719 --> 00:17:42.729 align:start position:0%
the teen and then I reappeared you for
 

00:17:42.729 --> 00:17:45.269 align:start position:0%
the teen and then I reappeared you for
five<00:17:42.940><c> and</c><00:17:43.330><c> they</c><00:17:43.690><c> used</c><00:17:43.840><c> to</c><00:17:43.869><c> be</c><00:17:43.929><c> m25</c><00:17:44.320><c> it</c><00:17:45.159><c> also</c>

00:17:45.269 --> 00:17:45.279 align:start position:0%
five and they used to be m25 it also
 

00:17:45.279 --> 00:17:46.259 align:start position:0%
five and they used to be m25 it also
prevents<00:17:45.700><c> you</c><00:17:45.789><c> from</c><00:17:45.820><c> the</c><00:17:45.999><c> other</c><00:17:46.119><c> direction</c>

00:17:46.259 --> 00:17:46.269 align:start position:0%
prevents you from the other direction
 

00:17:46.269 --> 00:17:48.570 align:start position:0%
prevents you from the other direction
even<00:17:46.779><c> are</c><00:17:47.049><c> you</c><00:17:47.229><c> approved</c><00:17:47.590><c> for</c><00:17:47.769><c> ten</c><00:17:47.950><c> I</c><00:17:48.159><c> changed</c>

00:17:48.570 --> 00:17:48.580 align:start position:0%
even are you approved for ten I changed
 

00:17:48.580 --> 00:17:50.729 align:start position:0%
even are you approved for ten I changed
it<00:17:48.759><c> to</c><00:17:48.789><c> approve</c><00:17:49.269><c> you</c><00:17:49.359><c> for</c><00:17:49.509><c> 20</c><00:17:49.779><c> in</c><00:17:49.989><c> this</c><00:17:50.499><c> scheme</c>

00:17:50.729 --> 00:17:50.739 align:start position:0%
it to approve you for 20 in this scheme
 

00:17:50.739 --> 00:17:51.899 align:start position:0%
it to approve you for 20 in this scheme
you<00:17:50.830><c> could</c><00:17:50.950><c> take</c><00:17:51.070><c> a</c><00:17:51.099><c> 30</c><00:17:51.369><c> right</c><00:17:51.669><c> because</c><00:17:51.820><c> you</c>

00:17:51.899 --> 00:17:51.909 align:start position:0%
you could take a 30 right because you
 

00:17:51.909 --> 00:17:53.460 align:start position:0%
you could take a 30 right because you
take<00:17:52.059><c> that</c><00:17:52.119><c> initial</c><00:17:52.389><c> 10</c><00:17:52.599><c> and</c><00:17:52.929><c> then</c><00:17:53.349><c> when</c><00:17:53.440><c> I</c>

00:17:53.460 --> 00:17:53.470 align:start position:0%
take that initial 10 and then when I
 

00:17:53.470 --> 00:17:54.899 align:start position:0%
take that initial 10 and then when I
bump<00:17:53.679><c> it</c><00:17:53.739><c> up</c><00:17:53.799><c> to</c><00:17:53.859><c> 20</c><00:17:54.190><c> you're</c><00:17:54.429><c> actually</c><00:17:54.729><c> able</c><00:17:54.789><c> to</c>

00:17:54.899 --> 00:17:54.909 align:start position:0%
bump it up to 20 you're actually able to
 

00:17:54.909 --> 00:18:02.930 align:start position:0%
bump it up to 20 you're actually able to
so<00:17:55.269><c> it</c><00:17:55.629><c> works</c><00:17:56.229><c> in</c><00:17:56.320><c> both</c><00:17:56.440><c> directions</c>

00:18:02.930 --> 00:18:02.940 align:start position:0%
 
 

00:18:02.940 --> 00:18:07.379 align:start position:0%
 
besides<00:18:03.940><c> setting</c><00:18:04.359><c> it</c><00:18:04.539><c> to</c><00:18:04.659><c> zero</c><00:18:04.929><c> and</c><00:18:06.389><c> raising</c>

00:18:07.379 --> 00:18:07.389 align:start position:0%
besides setting it to zero and raising
 

00:18:07.389 --> 00:18:08.820 align:start position:0%
besides setting it to zero and raising
at<00:18:07.479><c> the</c><00:18:07.539><c> end</c><00:18:07.659><c> of</c><00:18:07.779><c> five</c><00:18:07.929><c> has</c><00:18:08.169><c> to</c><00:18:08.200><c> be</c><00:18:08.499><c> two</c>

00:18:08.820 --> 00:18:08.830 align:start position:0%
at the end of five has to be two
 

00:18:08.830 --> 00:18:16.710 align:start position:0%
at the end of five has to be two
separate<00:18:09.159><c> transactions</c><00:18:14.820><c> I</c><00:18:15.820><c> think</c><00:18:16.539><c> in</c>

00:18:16.710 --> 00:18:16.720 align:start position:0%
separate transactions I think in
 

00:18:16.720 --> 00:18:18.629 align:start position:0%
separate transactions I think in
response<00:18:16.960><c> to</c><00:18:17.379><c> the</c><00:18:17.499><c> tweet</c><00:18:17.799><c> was</c><00:18:18.070><c> the</c><00:18:18.309><c> the</c>

00:18:18.629 --> 00:18:18.639 align:start position:0%
response to the tweet was the the
 

00:18:18.639 --> 00:18:21.419 align:start position:0%
response to the tweet was the the
official<00:18:19.029><c> submission</c><00:18:19.359><c> venue</c><00:18:20.019><c> yeah</c><00:18:20.889><c> we</c><00:18:21.309><c> can</c>

00:18:21.419 --> 00:18:21.429 align:start position:0%
official submission venue yeah we can
 

00:18:21.429 --> 00:18:23.369 align:start position:0%
official submission venue yeah we can
post<00:18:21.789><c> it</c><00:18:21.940><c> somewhere</c><00:18:22.090><c> afterwards</c><00:18:22.479><c> as</c><00:18:22.720><c> well</c><00:18:22.899><c> but</c>

00:18:23.369 --> 00:18:23.379 align:start position:0%
post it somewhere afterwards as well but
 

00:18:23.379 --> 00:18:24.839 align:start position:0%
post it somewhere afterwards as well but
I<00:18:23.440><c> think</c><00:18:23.710><c> he</c><00:18:23.799><c> wants</c><00:18:23.889><c> to</c><00:18:24.070><c> know</c><00:18:24.159><c> how</c><00:18:24.369><c> he</c><00:18:24.460><c> can</c><00:18:24.700><c> get</c>

00:18:24.839 --> 00:18:24.849 align:start position:0%
I think he wants to know how he can get
 

00:18:24.849 --> 00:18:26.519 align:start position:0%
I think he wants to know how he can get
it<00:18:24.999><c> draw</c><00:18:25.210><c> the</c><00:18:25.269><c> draw</c><00:18:25.899><c> a</c><00:18:25.929><c> submission</c><00:18:26.289><c> to</c><00:18:26.499><c> our</c>

00:18:26.519 --> 00:18:26.529 align:start position:0%
it draw the draw a submission to our
 

00:18:26.529 --> 00:18:28.919 align:start position:0%
it draw the draw a submission to our
attention<00:18:26.889><c> now</c><00:18:27.220><c> Oh</c><00:18:27.519><c> is</c><00:18:28.389><c> there</c><00:18:28.570><c> a</c><00:18:28.629><c> submission</c>

00:18:28.919 --> 00:18:28.929 align:start position:0%
attention now Oh is there a submission
 

00:18:28.929 --> 00:18:42.389 align:start position:0%
attention now Oh is there a submission
somewhere<00:18:29.799><c> in</c><00:18:29.919><c> some</c><00:18:30.129><c> queue</c><00:18:30.690><c> cool</c><00:18:39.029><c> right</c><00:18:41.399><c> we'll</c>

00:18:42.389 --> 00:18:42.399 align:start position:0%
somewhere in some queue cool right we'll
 

00:18:42.399 --> 00:18:47.070 align:start position:0%
somewhere in some queue cool right we'll
go<00:18:42.879><c> through</c><00:18:43.119><c> this</c><00:18:43.269><c> a</c><00:18:43.330><c> bit</c><00:18:43.539><c> more</c><00:18:44.940><c> until</c><00:18:46.080><c> because</c>

00:18:47.070 --> 00:18:47.080 align:start position:0%
go through this a bit more until because
 

00:18:47.080 --> 00:18:49.830 align:start position:0%
go through this a bit more until because
I<00:18:47.109><c> think</c><00:18:47.379><c> there</c><00:18:47.499><c> was</c><00:18:47.619><c> some</c><00:18:48.419><c> and</c><00:18:49.419><c> then</c><00:18:49.690><c> we'll</c>

00:18:49.830 --> 00:18:49.840 align:start position:0%
I think there was some and then we'll
 

00:18:49.840 --> 00:18:52.549 align:start position:0%
I think there was some and then we'll
jump<00:18:50.019><c> to</c><00:18:50.139><c> the</c><00:18:50.229><c> next</c><00:18:50.320><c> one</c><00:18:50.470><c> this</c><00:18:50.950><c> is</c><00:18:51.279><c> the</c><00:18:51.700><c> actual</c>

00:18:52.549 --> 00:18:52.559 align:start position:0%
jump to the next one this is the actual
 

00:18:52.559 --> 00:18:55.440 align:start position:0%
jump to the next one this is the actual
contracts<00:18:53.820><c> implementation</c><00:18:54.820><c> and</c><00:18:55.029><c> not</c><00:18:55.059><c> just</c>

00:18:55.440 --> 00:18:55.450 align:start position:0%
contracts implementation and not just
 

00:18:55.450 --> 00:18:58.139 align:start position:0%
contracts implementation and not just
boilerplate<00:18:56.429><c> well</c><00:18:57.429><c> there</c><00:18:57.609><c> is</c><00:18:57.700><c> actually</c>

00:18:58.139 --> 00:18:58.149 align:start position:0%
boilerplate well there is actually
 

00:18:58.149 --> 00:19:00.330 align:start position:0%
boilerplate well there is actually
mostly<00:18:58.570><c> boilerplate</c><00:18:59.019><c> in</c><00:18:59.349><c> the</c><00:18:59.529><c> constructor</c><00:19:00.159><c> it</c>

00:19:00.330 --> 00:19:00.340 align:start position:0%
mostly boilerplate in the constructor it
 

00:19:00.340 --> 00:19:03.810 align:start position:0%
mostly boilerplate in the constructor it
says<00:19:00.639><c> issue</c><00:19:00.879><c> cards</c><00:19:01.389><c> for</c><00:19:02.399><c> where</c><00:19:03.399><c> is</c><00:19:03.489><c> that</c><00:19:03.580><c> from</c>

00:19:03.810 --> 00:19:03.820 align:start position:0%
says issue cards for where is that from
 

00:19:03.820 --> 00:19:05.639 align:start position:0%
says issue cards for where is that from
line<00:19:03.970><c> 255</c><00:19:04.749><c> there's</c><00:19:04.989><c> a</c><00:19:05.049><c> hundred</c><00:19:05.320><c> of</c><00:19:05.379><c> them</c><00:19:05.440><c> my</c>

00:19:05.639 --> 00:19:05.649 align:start position:0%
line 255 there's a hundred of them my
 

00:19:05.649 --> 00:19:11.609 align:start position:0%
line 255 there's a hundred of them my
counter<00:19:05.950><c> and</c><00:19:09.210><c> every</c><00:19:10.210><c> call</c><00:19:10.869><c> to</c><00:19:10.899><c> issue</c><00:19:11.259><c> card</c>

00:19:11.609 --> 00:19:11.619 align:start position:0%
counter and every call to issue card
 

00:19:11.619 --> 00:19:13.109 align:start position:0%
counter and every call to issue card
here<00:19:11.859><c> in</c><00:19:11.979><c> this</c><00:19:12.099><c> constructor</c><00:19:12.669><c> will</c><00:19:12.849><c> increase</c>

00:19:13.109 --> 00:19:13.119 align:start position:0%
here in this constructor will increase
 

00:19:13.119 --> 00:19:17.129 align:start position:0%
here in this constructor will increase
the<00:19:13.269><c> total</c><00:19:13.419><c> supply</c><00:19:14.129><c> to</c><00:19:15.129><c> 100</c><00:19:16.059><c> and</c><00:19:16.330><c> set</c><00:19:17.019><c> the</c>

00:19:17.129 --> 00:19:17.139 align:start position:0%
the total supply to 100 and set the
 

00:19:17.139 --> 00:19:19.820 align:start position:0%
the total supply to 100 and set the
balances<00:19:17.710><c> of</c><00:19:17.950><c> these</c><00:19:18.099><c> hard</c><00:19:18.399><c> coded</c><00:19:18.700><c> addresses</c>

00:19:19.820 --> 00:19:19.830 align:start position:0%
balances of these hard coded addresses
 

00:19:19.830 --> 00:19:23.070 align:start position:0%
balances of these hard coded addresses
and<00:19:20.830><c> then</c><00:19:21.039><c> there's</c><00:19:21.340><c> this</c><00:19:21.700><c> and</c><00:19:22.090><c> that's</c><00:19:22.960><c> an</c>

00:19:23.070 --> 00:19:23.080 align:start position:0%
and then there's this and that's an
 

00:19:23.080 --> 00:19:24.749 align:start position:0%
and then there's this and that's an
internal<00:19:23.440><c> thing</c><00:19:24.009><c> so</c><00:19:24.249><c> now</c><00:19:24.340><c> I'm</c><00:19:24.489><c> gonna</c><00:19:24.580><c> call</c>

00:19:24.749 --> 00:19:24.759 align:start position:0%
internal thing so now I'm gonna call
 

00:19:24.759 --> 00:19:27.509 align:start position:0%
internal thing so now I'm gonna call
that<00:19:24.789><c> external</c><00:19:25.450><c> and</c><00:19:25.769><c> then</c><00:19:26.769><c> we</c><00:19:26.889><c> have</c><00:19:27.070><c> the</c><00:19:27.309><c> bike</c>

00:19:27.509 --> 00:19:27.519 align:start position:0%
that external and then we have the bike
 

00:19:27.519 --> 00:19:29.219 align:start position:0%
that external and then we have the bike
card<00:19:27.879><c> there's</c><00:19:28.450><c> actually</c><00:19:28.720><c> one</c><00:19:28.779><c> quick</c><00:19:28.929><c> thing</c><00:19:29.080><c> I</c>

00:19:29.219 --> 00:19:29.229 align:start position:0%
card there's actually one quick thing I
 

00:19:29.229 --> 00:19:30.629 align:start position:0%
card there's actually one quick thing I
want<00:19:29.409><c> to</c><00:19:29.499><c> point</c><00:19:29.559><c> out</c><00:19:29.679><c> with</c><00:19:29.799><c> the</c><00:19:29.919><c> issue</c><00:19:30.070><c> card</c><00:19:30.460><c> on</c>

00:19:30.629 --> 00:19:30.639 align:start position:0%
want to point out with the issue card on
 

00:19:30.639 --> 00:19:32.060 align:start position:0%
want to point out with the issue card on
this<00:19:31.210><c> part</c><00:19:31.479><c> they</c><00:19:31.539><c> actually</c><00:19:31.749><c> did</c><00:19:31.840><c> write</c>

00:19:32.060 --> 00:19:32.070 align:start position:0%
this part they actually did write
 

00:19:32.070 --> 00:19:34.739 align:start position:0%
this part they actually did write
oftentimes<00:19:33.070><c> in</c><00:19:33.639><c> the</c><00:19:33.999><c> constructor</c><00:19:34.419><c> people</c>

00:19:34.739 --> 00:19:34.749 align:start position:0%
oftentimes in the constructor people
 

00:19:34.749 --> 00:19:36.599 align:start position:0%
oftentimes in the constructor people
allocate<00:19:35.229><c> tokens</c><00:19:35.590><c> and</c><00:19:35.710><c> don't</c><00:19:35.919><c> call</c><00:19:36.159><c> transfer</c>

00:19:36.599 --> 00:19:36.609 align:start position:0%
allocate tokens and don't call transfer
 

00:19:36.609 --> 00:19:38.279 align:start position:0%
allocate tokens and don't call transfer
which<00:19:37.359><c> means</c><00:19:37.629><c> that</c><00:19:37.809><c> there's</c><00:19:37.929><c> no</c><00:19:38.019><c> transfer</c>

00:19:38.279 --> 00:19:38.289 align:start position:0%
which means that there's no transfer
 

00:19:38.289 --> 00:19:39.989 align:start position:0%
which means that there's no transfer
events<00:19:38.499><c> so</c><00:19:38.950><c> if</c><00:19:39.039><c> you</c><00:19:39.129><c> are</c><00:19:39.279><c> writing</c><00:19:39.460><c> a</c><00:19:39.580><c> tool</c><00:19:39.759><c> that</c>

00:19:39.989 --> 00:19:39.999 align:start position:0%
events so if you are writing a tool that
 

00:19:39.999 --> 00:19:41.369 align:start position:0%
events so if you are writing a tool that
works<00:19:40.179><c> against</c><00:19:40.509><c> like</c><00:19:40.599><c> status</c><00:19:41.080><c> or</c><00:19:41.200><c> when</c><00:19:41.289><c> those</c>

00:19:41.369 --> 00:19:41.379 align:start position:0%
works against like status or when those
 

00:19:41.379 --> 00:19:44.700 align:start position:0%
works against like status or when those
other<00:19:42.479><c> apps</c><00:19:43.479><c> that</c><00:19:43.809><c> that</c><00:19:44.229><c> looks</c><00:19:44.470><c> at</c><00:19:44.619><c> the</c>

00:19:44.700 --> 00:19:44.710 align:start position:0%
other apps that that looks at the
 

00:19:44.710 --> 00:19:46.349 align:start position:0%
other apps that that looks at the
history<00:19:44.979><c> to</c><00:19:45.129><c> figure</c><00:19:45.249><c> out</c><00:19:45.369><c> how</c><00:19:46.059><c> many</c><00:19:46.119><c> tokens</c>

00:19:46.349 --> 00:19:46.359 align:start position:0%
history to figure out how many tokens
 

00:19:46.359 --> 00:19:48.570 align:start position:0%
history to figure out how many tokens
you<00:19:46.599><c> have</c><00:19:46.779><c> if</c><00:19:47.559><c> you</c><00:19:47.830><c> were</c><00:19:47.919><c> allocated</c><00:19:48.369><c> five</c>

00:19:48.570 --> 00:19:48.580 align:start position:0%
you have if you were allocated five
 

00:19:48.580 --> 00:19:50.099 align:start position:0%
you have if you were allocated five
tokens<00:19:49.029><c> for</c><00:19:49.269><c> example</c><00:19:49.570><c> in</c><00:19:49.629><c> the</c><00:19:49.690><c> constructor</c>

00:19:50.099 --> 00:19:50.109 align:start position:0%
tokens for example in the constructor
 

00:19:50.109 --> 00:19:52.320 align:start position:0%
tokens for example in the constructor
and<00:19:50.259><c> a</c><00:19:50.349><c> transfer</c><00:19:51.039><c> never</c><00:19:51.220><c> happened</c><00:19:51.609><c> and</c><00:19:52.179><c> you're</c>

00:19:52.320 --> 00:19:52.330 align:start position:0%
and a transfer never happened and you're
 

00:19:52.330 --> 00:19:53.990 align:start position:0%
and a transfer never happened and you're
just<00:19:52.419><c> looking</c><00:19:52.539><c> for</c><00:19:52.929><c> those</c><00:19:53.409><c> events</c>

00:19:53.990 --> 00:19:54.000 align:start position:0%
just looking for those events
 

00:19:54.000 --> 00:19:55.130 align:start position:0%
just looking for those events
don't<00:19:54.150><c> actually</c><00:19:54.300><c> know</c><00:19:54.630><c> that</c><00:19:54.660><c> you</c><00:19:54.870><c> had</c><00:19:54.960><c> five</c>

00:19:55.130 --> 00:19:55.140 align:start position:0%
don't actually know that you had five
 

00:19:55.140 --> 00:20:02.600 align:start position:0%
don't actually know that you had five
tokens<00:19:55.340><c> so</c><00:19:56.340><c> that</c><00:19:56.940><c> I</c><00:19:56.970><c> thought</c><00:19:57.300><c> was</c><00:20:01.280><c> right</c><00:20:02.280><c> from</c>

00:20:02.600 --> 00:20:02.610 align:start position:0%
tokens so that I thought was right from
 

00:20:02.610 --> 00:20:05.510 align:start position:0%
tokens so that I thought was right from
zero<00:20:02.940><c> to</c><00:20:03.030><c> whoever</c><00:20:03.450><c> yeah</c><00:20:04.320><c> and</c><00:20:04.590><c> it's</c><00:20:05.160><c> also</c><00:20:05.280><c> good</c>

00:20:05.510 --> 00:20:05.520 align:start position:0%
zero to whoever yeah and it's also good
 

00:20:05.520 --> 00:20:08.030 align:start position:0%
zero to whoever yeah and it's also good
it's<00:20:06.240><c> also</c><00:20:06.420><c> good</c><00:20:06.690><c> like</c><00:20:06.960><c> a</c><00:20:07.200><c> reminder</c><00:20:07.740><c> that</c><00:20:07.770><c> the</c>

00:20:08.030 --> 00:20:08.040 align:start position:0%
it's also good like a reminder that the
 

00:20:08.040 --> 00:20:11.090 align:start position:0%
it's also good like a reminder that the
transfer<00:20:08.610><c> event</c><00:20:08.940><c> is</c><00:20:09.210><c> like</c><00:20:09.900><c> merely</c><00:20:10.410><c> a</c><00:20:10.560><c> helper</c>

00:20:11.090 --> 00:20:11.100 align:start position:0%
transfer event is like merely a helper
 

00:20:11.100 --> 00:20:14.420 align:start position:0%
transfer event is like merely a helper
writes<00:20:11.670><c> a</c><00:20:11.820><c> lot</c><00:20:12.000><c> of</c><00:20:12.090><c> a</c><00:20:12.270><c> lot</c><00:20:12.420><c> of</c><00:20:12.510><c> apps</c><00:20:12.800><c> like</c><00:20:13.800><c> just</c>

00:20:14.420 --> 00:20:14.430 align:start position:0%
writes a lot of a lot of apps like just
 

00:20:14.430 --> 00:20:16.250 align:start position:0%
writes a lot of a lot of apps like just
kind<00:20:15.060><c> of</c><00:20:15.120><c> assuming</c><00:20:15.360><c> transfer</c><00:20:15.780><c> events</c><00:20:15.960><c> as</c><00:20:16.170><c> the</c>

00:20:16.250 --> 00:20:16.260 align:start position:0%
kind of assuming transfer events as the
 

00:20:16.260 --> 00:20:18.050 align:start position:0%
kind of assuming transfer events as the
absolute<00:20:16.470><c> truth</c><00:20:16.800><c> but</c><00:20:17.040><c> I</c><00:20:17.070><c> but</c><00:20:17.460><c> it's</c><00:20:17.820><c> good</c><00:20:17.970><c> to</c>

00:20:18.050 --> 00:20:18.060 align:start position:0%
absolute truth but I but it's good to
 

00:20:18.060 --> 00:20:20.930 align:start position:0%
absolute truth but I but it's good to
always<00:20:18.390><c> at</c><00:20:18.810><c> least</c><00:20:19.020><c> check</c><00:20:19.320><c> on</c><00:20:19.560><c> chain</c><00:20:19.940><c> whether</c>

00:20:20.930 --> 00:20:20.940 align:start position:0%
always at least check on chain whether
 

00:20:20.940 --> 00:20:23.270 align:start position:0%
always at least check on chain whether
that<00:20:21.330><c> transfer</c><00:20:22.140><c> event</c><00:20:22.440><c> were</c><00:20:22.620><c> you</c><00:20:22.950><c> know</c><00:20:23.070><c> like</c>

00:20:23.270 --> 00:20:23.280 align:start position:0%
that transfer event were you know like
 

00:20:23.280 --> 00:20:26.300 align:start position:0%
that transfer event were you know like
represents<00:20:23.910><c> reality</c><00:20:24.060><c> right</c><00:20:24.840><c> and</c><00:20:25.320><c> one</c><00:20:26.160><c> of</c><00:20:26.250><c> the</c>

00:20:26.300 --> 00:20:26.310 align:start position:0%
represents reality right and one of the
 

00:20:26.310 --> 00:20:27.800 align:start position:0%
represents reality right and one of the
quick<00:20:26.460><c> come</c><00:20:26.580><c> on</c><00:20:26.700><c> I</c><00:20:26.790><c> might</c><00:20:26.940><c> make</c><00:20:27.090><c> as</c><00:20:27.750><c> a</c>

00:20:27.800 --> 00:20:27.810 align:start position:0%
quick come on I might make as a
 

00:20:27.810 --> 00:20:30.050 align:start position:0%
quick come on I might make as a
shameless<00:20:28.470><c> plug</c><00:20:28.740><c> is</c><00:20:29.130><c> there's</c><00:20:29.490><c> a</c><00:20:29.580><c> system</c>

00:20:30.050 --> 00:20:30.060 align:start position:0%
shameless plug is there's a system
 

00:20:30.060 --> 00:20:32.270 align:start position:0%
shameless plug is there's a system
called<00:20:30.300><c> Merkel</c><00:20:30.780><c> airdrops</c><00:20:31.290><c> that</c><00:20:31.980><c> might</c><00:20:32.190><c> have</c>

00:20:32.270 --> 00:20:32.280 align:start position:0%
called Merkel airdrops that might have
 

00:20:32.280 --> 00:20:34.880 align:start position:0%
called Merkel airdrops that might have
worked<00:20:32.460><c> better</c><00:20:32.640><c> here</c><00:20:33.050><c> for</c><00:20:34.050><c> 100</c><00:20:34.380><c> maybe</c><00:20:34.500><c> not</c><00:20:34.740><c> so</c>

00:20:34.880 --> 00:20:34.890 align:start position:0%
worked better here for 100 maybe not so
 

00:20:34.890 --> 00:20:36.440 align:start position:0%
worked better here for 100 maybe not so
bad<00:20:35.040><c> but</c><00:20:35.280><c> you</c><00:20:35.340><c> can</c><00:20:35.490><c> imagine</c><00:20:35.610><c> you</c><00:20:36.090><c> don't</c><00:20:36.270><c> want</c>

00:20:36.440 --> 00:20:36.450 align:start position:0%
bad but you can imagine you don't want
 

00:20:36.450 --> 00:20:37.610 align:start position:0%
bad but you can imagine you don't want
it<00:20:36.570><c> if</c><00:20:36.660><c> you're</c><00:20:36.810><c> putting</c><00:20:37.200><c> this</c><00:20:37.260><c> out</c><00:20:37.350><c> into</c><00:20:37.560><c> a</c>

00:20:37.610 --> 00:20:37.620 align:start position:0%
it if you're putting this out into a
 

00:20:37.620 --> 00:20:39.470 align:start position:0%
it if you're putting this out into a
thousand<00:20:38.010><c> people's</c><00:20:38.220><c> hands</c>

00:20:39.470 --> 00:20:39.480 align:start position:0%
thousand people's hands
 

00:20:39.480 --> 00:20:41.600 align:start position:0%
thousand people's hands
not<00:20:40.410><c> everyone</c><00:20:40.740><c> maybe</c><00:20:40.860><c> use</c><00:20:41.070><c> their</c><00:20:41.190><c> card</c><00:20:41.430><c> it</c>

00:20:41.600 --> 00:20:41.610 align:start position:0%
not everyone maybe use their card it
 

00:20:41.610 --> 00:20:44.000 align:start position:0%
not everyone maybe use their card it
makes<00:20:41.730><c> more</c><00:20:41.880><c> sense</c><00:20:41.940><c> to</c><00:20:42.210><c> you</c><00:20:42.630><c> to</c><00:20:43.020><c> Merkel</c><00:20:43.890><c> eyes</c>

00:20:44.000 --> 00:20:44.010 align:start position:0%
makes more sense to you to Merkel eyes
 

00:20:44.010 --> 00:20:45.650 align:start position:0%
makes more sense to you to Merkel eyes
it<00:20:44.190><c> and</c><00:20:44.370><c> just</c><00:20:44.580><c> submit</c><00:20:44.700><c> the</c><00:20:44.820><c> Merkel</c><00:20:45.150><c> hash</c><00:20:45.300><c> and</c>

00:20:45.650 --> 00:20:45.660 align:start position:0%
it and just submit the Merkel hash and
 

00:20:45.660 --> 00:20:47.660 align:start position:0%
it and just submit the Merkel hash and
then<00:20:46.230><c> force</c><00:20:46.560><c> people</c><00:20:46.710><c> to</c><00:20:46.830><c> claim</c><00:20:47.010><c> it</c><00:20:47.220><c> if</c><00:20:47.370><c> that</c>

00:20:47.660 --> 00:20:47.670 align:start position:0%
then force people to claim it if that
 

00:20:47.670 --> 00:20:48.950 align:start position:0%
then force people to claim it if that
works<00:20:47.910><c> in</c><00:20:48.030><c> your</c><00:20:48.120><c> case</c><00:20:48.300><c> it</c><00:20:48.540><c> might</c><00:20:48.570><c> not</c><00:20:48.750><c> work</c><00:20:48.780><c> in</c>

00:20:48.950 --> 00:20:48.960 align:start position:0%
works in your case it might not work in
 

00:20:48.960 --> 00:20:50.870 align:start position:0%
works in your case it might not work in
all<00:20:49.020><c> cases</c><00:20:49.170><c> but</c><00:20:50.130><c> I</c><00:20:50.190><c> could</c><00:20:50.400><c> imagine</c><00:20:50.550><c> situations</c>

00:20:50.870 --> 00:20:50.880 align:start position:0%
all cases but I could imagine situations
 

00:20:50.880 --> 00:20:52.700 align:start position:0%
all cases but I could imagine situations
we're<00:20:51.330><c> deploying</c><00:20:51.750><c> this</c><00:20:52.080><c> especially</c><00:20:52.500><c> if</c><00:20:52.650><c> you</c>

00:20:52.700 --> 00:20:52.710 align:start position:0%
we're deploying this especially if you
 

00:20:52.710 --> 00:20:53.210 align:start position:0%
we're deploying this especially if you
want<00:20:52.800><c> to</c><00:20:52.890><c> issue</c>

00:20:53.210 --> 00:20:53.220 align:start position:0%
want to issue
 

00:20:53.220 --> 00:21:00.310 align:start position:0%
want to issue
ten<00:20:54.000><c> million</c><00:20:54.210><c> cards</c><00:20:54.690><c> would</c><00:20:54.870><c> be</c><00:20:54.930><c> infeasible</c>

00:21:00.310 --> 00:21:00.320 align:start position:0%
 
 

00:21:00.320 --> 00:21:03.020 align:start position:0%
 
use<00:21:01.320><c> the</c><00:21:01.470><c> microphone</c><00:21:01.890><c> cause</c><00:21:02.130><c> I</c><00:21:02.160><c> still</c><00:21:02.520><c> has</c><00:21:02.700><c> I</c>

00:21:03.020 --> 00:21:03.030 align:start position:0%
use the microphone cause I still has I
 

00:21:03.030 --> 00:21:05.030 align:start position:0%
use the microphone cause I still has I
think<00:21:03.660><c> that</c><00:21:03.750><c> if</c><00:21:03.900><c> you</c><00:21:04.020><c> card</c><00:21:04.230><c> has</c><00:21:04.440><c> a</c><00:21:04.470><c> pocket</c><00:21:04.650><c> here</c>

00:21:05.030 --> 00:21:05.040 align:start position:0%
think that if you card has a pocket here
 

00:21:05.040 --> 00:21:07.160 align:start position:0%
think that if you card has a pocket here
because<00:21:06.030><c> it</c><00:21:06.150><c> can</c><00:21:06.180><c> lead</c><00:21:06.330><c> to</c><00:21:06.570><c> inconsistent</c>

00:21:07.160 --> 00:21:07.170 align:start position:0%
because it can lead to inconsistent
 

00:21:07.170 --> 00:21:08.870 align:start position:0%
because it can lead to inconsistent
total<00:21:07.380><c> supply</c><00:21:07.620><c> because</c><00:21:07.950><c> if</c><00:21:08.100><c> you</c><00:21:08.250><c> issue</c><00:21:08.520><c> card</c>

00:21:08.870 --> 00:21:08.880 align:start position:0%
total supply because if you issue card
 

00:21:08.880 --> 00:21:11.000 align:start position:0%
total supply because if you issue card
to<00:21:09.450><c> the</c><00:21:09.570><c> same</c><00:21:09.720><c> address</c><00:21:09.990><c> twice</c><00:21:10.170><c> then</c><00:21:10.680><c> the</c>

00:21:11.000 --> 00:21:11.010 align:start position:0%
to the same address twice then the
 

00:21:11.010 --> 00:21:13.130 align:start position:0%
to the same address twice then the
balance<00:21:11.280><c> will</c><00:21:11.430><c> be</c><00:21:11.580><c> still</c><00:21:11.910><c> one</c><00:21:12.480><c> but</c><00:21:12.810><c> total</c>

00:21:13.130 --> 00:21:13.140 align:start position:0%
balance will be still one but total
 

00:21:13.140 --> 00:21:21.520 align:start position:0%
balance will be still one but total
supply<00:21:13.380><c> will</c><00:21:13.530><c> be</c><00:21:13.560><c> increased</c><00:21:13.920><c> twice</c><00:21:14.130><c> yes</c><00:21:15.860><c> yes</c>

00:21:21.520 --> 00:21:21.530 align:start position:0%
 
 

00:21:21.530 --> 00:21:23.900 align:start position:0%
 
hard-coded<00:21:22.530><c> this</c><00:21:22.890><c> can</c><00:21:23.070><c> be</c><00:21:23.190><c> discovered</c><00:21:23.520><c> at</c><00:21:23.880><c> the</c>

00:21:23.900 --> 00:21:23.910 align:start position:0%
hard-coded this can be discovered at the
 

00:21:23.910 --> 00:21:27.200 align:start position:0%
hard-coded this can be discovered at the
you<00:21:24.540><c> know</c><00:21:24.630><c> at</c><00:21:24.960><c> the</c><00:21:25.590><c> code</c><00:21:25.800><c> at</c><00:21:26.070><c> the</c><00:21:26.280><c> this</c><00:21:26.760><c> stage</c>

00:21:27.200 --> 00:21:27.210 align:start position:0%
you know at the code at the this stage
 

00:21:27.210 --> 00:21:29.450 align:start position:0%
you know at the code at the this stage
where<00:21:27.510><c> we're</c><00:21:27.690><c> at</c><00:21:27.750><c> but</c><00:21:28.110><c> you</c><00:21:28.650><c> total</c><00:21:29.070><c> right</c><00:21:29.220><c> that</c>

00:21:29.450 --> 00:21:29.460 align:start position:0%
where we're at but you total right that
 

00:21:29.460 --> 00:21:32.630 align:start position:0%
where we're at but you total right that
I<00:21:29.670><c> mean</c><00:21:29.970><c> in</c><00:21:30.780><c> itself</c><00:21:31.170><c> yes</c><00:21:31.500><c> that</c><00:21:31.770><c> is</c><00:21:31.890><c> flawed</c><00:21:32.100><c> you</c>

00:21:32.630 --> 00:21:32.640 align:start position:0%
I mean in itself yes that is flawed you
 

00:21:32.640 --> 00:21:34.430 align:start position:0%
I mean in itself yes that is flawed you
also<00:21:32.820><c> very</c><00:21:32.970><c> good</c><00:21:33.300><c> point</c><00:21:33.540><c> if</c><00:21:33.690><c> I</c><00:21:33.840><c> was</c><00:21:34.110><c> doing</c><00:21:34.350><c> this</c>

00:21:34.430 --> 00:21:34.440 align:start position:0%
also very good point if I was doing this
 

00:21:34.440 --> 00:21:36.470 align:start position:0%
also very good point if I was doing this
I<00:21:34.650><c> would</c><00:21:34.710><c> probably</c><00:21:34.800><c> sort</c><00:21:35.370><c> the</c><00:21:35.670><c> cards</c><00:21:35.880><c> so</c><00:21:36.240><c> my</c>

00:21:36.470 --> 00:21:36.480 align:start position:0%
I would probably sort the cards so my
 

00:21:36.480 --> 00:21:38.060 align:start position:0%
I would probably sort the cards so my
inspection<00:21:36.900><c> you</c><00:21:37.230><c> could</c><00:21:37.350><c> tell</c><00:21:37.500><c> easier</c><00:21:37.950><c> if</c>

00:21:38.060 --> 00:21:38.070 align:start position:0%
inspection you could tell easier if
 

00:21:38.070 --> 00:21:39.470 align:start position:0%
inspection you could tell easier if
there<00:21:38.220><c> was</c><00:21:38.310><c> a</c><00:21:38.340><c> do</c><00:21:38.460><c> forget</c><00:21:38.700><c> one</c><00:21:38.850><c> yeah</c><00:21:39.210><c> I</c><00:21:39.240><c> think</c>

00:21:39.470 --> 00:21:39.480 align:start position:0%
there was a do forget one yeah I think
 

00:21:39.480 --> 00:21:41.060 align:start position:0%
there was a do forget one yeah I think
this<00:21:39.600><c> is</c><00:21:39.720><c> a</c><00:21:39.750><c> good</c><00:21:39.960><c> this</c><00:21:40.740><c> is</c><00:21:40.860><c> I</c><00:21:41.040><c> think</c>

00:21:41.060 --> 00:21:41.070 align:start position:0%
this is a good this is I think
 

00:21:41.070 --> 00:21:44.030 align:start position:0%
this is a good this is I think
regardless<00:21:41.760><c> I</c><00:21:42.570><c> would</c><00:21:43.080><c> change</c><00:21:43.440><c> this</c><00:21:43.740><c> because</c>

00:21:44.030 --> 00:21:44.040 align:start position:0%
regardless I would change this because
 

00:21:44.040 --> 00:21:46.130 align:start position:0%
regardless I would change this because
this<00:21:44.250><c> is</c><00:21:44.310><c> an</c><00:21:44.490><c> example</c><00:21:45.150><c> of</c><00:21:45.210><c> like</c><00:21:45.300><c> very</c><00:21:45.570><c> fragile</c>

00:21:46.130 --> 00:21:46.140 align:start position:0%
this is an example of like very fragile
 

00:21:46.140 --> 00:21:48.980 align:start position:0%
this is an example of like very fragile
code<00:21:46.380><c> if</c><00:21:46.590><c> the</c><00:21:46.800><c> guy</c><00:21:47.040><c> decides</c><00:21:47.460><c> oh</c><00:21:47.940><c> actually</c><00:21:48.360><c> I</c>

00:21:48.980 --> 00:21:48.990 align:start position:0%
code if the guy decides oh actually I
 

00:21:48.990 --> 00:21:52.370 align:start position:0%
code if the guy decides oh actually I
don't<00:21:49.380><c> have</c><00:21:50.210><c> like</c><00:21:51.210><c> you</c><00:21:51.480><c> know</c><00:21:51.630><c> hard</c><00:21:51.900><c> coded</c><00:21:52.140><c> list</c>

00:21:52.370 --> 00:21:52.380 align:start position:0%
don't have like you know hard coded list
 

00:21:52.380 --> 00:21:54.320 align:start position:0%
don't have like you know hard coded list
I<00:21:52.650><c> might</c><00:21:52.890><c> I</c><00:21:53.070><c> need</c><00:21:53.250><c> I</c><00:21:53.430><c> wanted</c><00:21:53.700><c> to</c><00:21:53.760><c> be</c><00:21:53.850><c> dynamic</c>

00:21:54.320 --> 00:21:54.330 align:start position:0%
I might I need I wanted to be dynamic
 

00:21:54.330 --> 00:21:55.700 align:start position:0%
I might I need I wanted to be dynamic
and<00:21:54.420><c> then</c><00:21:54.600><c> he</c><00:21:54.660><c> changes</c><00:21:55.050><c> us</c><00:21:55.200><c> and</c><00:21:55.380><c> then</c><00:21:55.620><c> he</c>

00:21:55.700 --> 00:21:55.710 align:start position:0%
and then he changes us and then he
 

00:21:55.710 --> 00:21:58.430 align:start position:0%
and then he changes us and then he
forgets<00:21:56.370><c> to</c><00:21:56.760><c> say</c><00:21:56.790><c> Oh</c><00:21:57.180><c> issue</c><00:21:57.390><c> card</c><00:21:57.810><c> wasn't</c><00:21:58.140><c> made</c>

00:21:58.430 --> 00:21:58.440 align:start position:0%
forgets to say Oh issue card wasn't made
 

00:21:58.440 --> 00:22:00.830 align:start position:0%
forgets to say Oh issue card wasn't made
for<00:21:58.470><c> that</c><00:21:58.680><c> and</c><00:21:59.010><c> he'll</c><00:21:59.550><c> deploy</c><00:21:59.850><c> that</c><00:22:00.120><c> and</c><00:22:00.450><c> then</c>

00:22:00.830 --> 00:22:00.840 align:start position:0%
for that and he'll deploy that and then
 

00:22:00.840 --> 00:22:02.720 align:start position:0%
for that and he'll deploy that and then
that<00:22:01.050><c> you</c><00:22:01.230><c> know</c><00:22:01.320><c> like</c><00:22:01.590><c> somebody</c><00:22:02.490><c> buy</c>

00:22:02.720 --> 00:22:02.730 align:start position:0%
that you know like somebody buy
 

00:22:02.730 --> 00:22:04.280 align:start position:0%
that you know like somebody buy
something<00:22:03.179><c> once</c><00:22:03.390><c> and</c><00:22:03.510><c> then</c><00:22:03.690><c> he'll</c><00:22:03.870><c> lose</c><00:22:04.050><c> like</c>

00:22:04.280 --> 00:22:04.290 align:start position:0%
something once and then he'll lose like
 

00:22:04.290 --> 00:22:06.470 align:start position:0%
something once and then he'll lose like
you<00:22:04.410><c> know</c><00:22:04.530><c> he'll</c><00:22:04.980><c> lose</c><00:22:05.130><c> one</c><00:22:05.280><c> of</c><00:22:05.370><c> them</c><00:22:05.460><c> right</c><00:22:05.610><c> so</c>

00:22:06.470 --> 00:22:06.480 align:start position:0%
you know he'll lose one of them right so
 

00:22:06.480 --> 00:22:07.850 align:start position:0%
you know he'll lose one of them right so
yeah<00:22:06.660><c> it's</c><00:22:06.780><c> like</c><00:22:06.870><c> always</c>

00:22:07.850 --> 00:22:07.860 align:start position:0%
yeah it's like always
 

00:22:07.860 --> 00:22:09.740 align:start position:0%
yeah it's like always
it<00:22:08.010><c> doesn't</c><00:22:08.370><c> really</c><00:22:08.610><c> cost</c><00:22:08.820><c> it</c><00:22:09.240><c> we</c><00:22:09.510><c> know</c><00:22:09.600><c> it</c>

00:22:09.740 --> 00:22:09.750 align:start position:0%
it doesn't really cost it we know it
 

00:22:09.750 --> 00:22:11.450 align:start position:0%
it doesn't really cost it we know it
would<00:22:09.929><c> probably</c><00:22:09.960><c> end</c><00:22:10.350><c> up</c><00:22:10.440><c> being</c><00:22:11.070><c> like</c><00:22:11.220><c> five</c>

00:22:11.450 --> 00:22:11.460 align:start position:0%
would probably end up being like five
 

00:22:11.460 --> 00:22:14.510 align:start position:0%
would probably end up being like five
more<00:22:11.670><c> opcodes</c><00:22:12.179><c> but</c><00:22:12.450><c> it's</c><00:22:12.540><c> it's</c><00:22:12.780><c> good</c><00:22:13.340><c> yeah</c><00:22:14.340><c> we</c>

00:22:14.510 --> 00:22:14.520 align:start position:0%
more opcodes but it's it's good yeah we
 

00:22:14.520 --> 00:22:18.830 align:start position:0%
more opcodes but it's it's good yeah we
like<00:22:15.240><c> it</c><00:22:15.270><c> to</c><00:22:16.110><c> dot</c><00:22:16.320><c> and</c><00:22:17.250><c> then</c><00:22:17.700><c> plus</c><00:22:17.940><c> yeah</c><00:22:18.540><c> oh</c><00:22:18.630><c> no</c>

00:22:18.830 --> 00:22:18.840 align:start position:0%
like it to dot and then plus yeah oh no
 

00:22:18.840 --> 00:22:21.830 align:start position:0%
like it to dot and then plus yeah oh no
okay<00:22:19.290><c> yeah</c><00:22:19.710><c> always</c><00:22:20.190><c> always</c><00:22:20.610><c> they</c><00:22:21.450><c> try</c><00:22:21.600><c> to</c><00:22:21.660><c> make</c>

00:22:21.830 --> 00:22:21.840 align:start position:0%
okay yeah always always they try to make
 

00:22:21.840 --> 00:22:23.930 align:start position:0%
okay yeah always always they try to make
your<00:22:21.929><c> code</c><00:22:22.140><c> as</c><00:22:22.380><c> anti</c><00:22:23.010><c> fragile</c><00:22:23.250><c> as</c><00:22:23.490><c> possible</c>

00:22:23.930 --> 00:22:23.940 align:start position:0%
your code as anti fragile as possible
 

00:22:23.940 --> 00:22:26.299 align:start position:0%
your code as anti fragile as possible
just<00:22:24.120><c> because</c><00:22:24.210><c> it's</c><00:22:24.540><c> it</c><00:22:25.110><c> works</c><00:22:25.320><c> if</c><00:22:25.650><c> it's</c><00:22:26.040><c> work</c>

00:22:26.299 --> 00:22:26.309 align:start position:0%
just because it's it works if it's work
 

00:22:26.309 --> 00:22:28.039 align:start position:0%
just because it's it works if it's work
if<00:22:26.610><c> it's</c><00:22:26.820><c> wonky</c><00:22:27.270><c> but</c><00:22:27.450><c> it</c><00:22:27.540><c> works</c><00:22:27.720><c> in</c><00:22:27.900><c> this</c>

00:22:28.039 --> 00:22:28.049 align:start position:0%
if it's wonky but it works in this
 

00:22:28.049 --> 00:22:29.840 align:start position:0%
if it's wonky but it works in this
specific<00:22:28.530><c> situation</c><00:22:28.679><c> just</c><00:22:29.309><c> change</c><00:22:29.580><c> it</c><00:22:29.760><c> so</c>

00:22:29.840 --> 00:22:29.850 align:start position:0%
specific situation just change it so
 

00:22:29.850 --> 00:22:30.890 align:start position:0%
specific situation just change it so
that<00:22:29.970><c> it</c><00:22:30.059><c> works</c><00:22:30.120><c> in</c><00:22:30.299><c> the</c><00:22:30.390><c> general</c><00:22:30.660><c> case</c>

00:22:30.890 --> 00:22:30.900 align:start position:0%
that it works in the general case
 

00:22:30.900 --> 00:22:32.510 align:start position:0%
that it works in the general case
because<00:22:31.200><c> you'll</c><00:22:31.320><c> forget</c><00:22:31.620><c> to</c><00:22:31.890><c> change</c><00:22:32.070><c> it</c><00:22:32.309><c> later</c>

00:22:32.510 --> 00:22:32.520 align:start position:0%
because you'll forget to change it later
 

00:22:32.520 --> 00:22:33.789 align:start position:0%
because you'll forget to change it later
on

00:22:33.789 --> 00:22:33.799 align:start position:0%
on
 

00:22:33.799 --> 00:22:36.460 align:start position:0%
on
having<00:22:34.799><c> been</c><00:22:34.920><c> a</c><00:22:34.980><c> security</c><00:22:35.400><c> auditor</c><00:22:35.760><c> in</c><00:22:36.059><c> like</c>

00:22:36.460 --> 00:22:36.470 align:start position:0%
having been a security auditor in like
 

00:22:36.470 --> 00:22:38.900 align:start position:0%
having been a security auditor in like
general<00:22:37.470><c> IT</c><00:22:37.710><c> security</c><00:22:38.010><c> one</c><00:22:38.370><c> thing</c><00:22:38.640><c> that</c><00:22:38.760><c> I've</c>

00:22:38.900 --> 00:22:38.910 align:start position:0%
general IT security one thing that I've
 

00:22:38.910 --> 00:22:41.299 align:start position:0%
general IT security one thing that I've
learned<00:22:38.940><c> is</c><00:22:39.299><c> that</c><00:22:39.620><c> ask</c><00:22:40.620><c> a</c><00:22:40.770><c> lot</c><00:22:40.860><c> of</c><00:22:40.980><c> stupid</c>

00:22:41.299 --> 00:22:41.309 align:start position:0%
learned is that ask a lot of stupid
 

00:22:41.309 --> 00:22:43.400 align:start position:0%
learned is that ask a lot of stupid
questions<00:22:41.370><c> and</c><00:22:41.850><c> don't</c><00:22:42.030><c> be</c><00:22:42.179><c> afraid</c><00:22:42.450><c> to</c><00:22:42.960><c> look</c>

00:22:43.400 --> 00:22:43.410 align:start position:0%
questions and don't be afraid to look
 

00:22:43.410 --> 00:22:45.830 align:start position:0%
questions and don't be afraid to look
stupid<00:22:43.590><c> because</c><00:22:44.250><c> it</c><00:22:44.400><c> makes</c><00:22:44.910><c> things</c><00:22:45.120><c> go</c><00:22:45.270><c> faster</c>

00:22:45.830 --> 00:22:45.840 align:start position:0%
stupid because it makes things go faster
 

00:22:45.840 --> 00:22:47.659 align:start position:0%
stupid because it makes things go faster
if<00:22:45.929><c> you</c><00:22:46.020><c> just</c><00:22:46.410><c> spit</c><00:22:47.040><c> out</c><00:22:47.070><c> things</c><00:22:47.490><c> you</c><00:22:47.580><c> don't</c>

00:22:47.659 --> 00:22:47.669 align:start position:0%
if you just spit out things you don't
 

00:22:47.669 --> 00:22:48.950 align:start position:0%
if you just spit out things you don't
understand<00:22:48.090><c> and</c><00:22:48.480><c> I</c><00:22:48.600><c> actually</c><00:22:48.750><c> don't</c>

00:22:48.950 --> 00:22:48.960 align:start position:0%
understand and I actually don't
 

00:22:48.960 --> 00:22:51.080 align:start position:0%
understand and I actually don't
understand<00:22:49.380><c> really</c><00:22:49.770><c> how</c><00:22:50.010><c> bike</c><00:22:50.580><c> card</c><00:22:50.850><c> works</c>

00:22:51.080 --> 00:22:51.090 align:start position:0%
understand really how bike card works
 

00:22:51.090 --> 00:22:55.280 align:start position:0%
understand really how bike card works
because<00:22:51.660><c> here</c><00:22:52.410><c> money</c><00:22:52.770><c> comes</c><00:22:53.070><c> in</c><00:22:53.280><c> I</c><00:22:53.929><c> check</c><00:22:54.929><c> some</c>

00:22:55.280 --> 00:22:55.290 align:start position:0%
because here money comes in I check some
 

00:22:55.290 --> 00:22:57.440 align:start position:0%
because here money comes in I check some
stuff<00:22:55.320><c> and</c><00:22:55.860><c> it</c><00:22:56.280><c> amidst</c><00:22:56.669><c> an</c><00:22:56.820><c> event</c><00:22:57.030><c> yeah</c>

00:22:57.440 --> 00:22:57.450 align:start position:0%
stuff and it amidst an event yeah
 

00:22:57.450 --> 00:23:00.650 align:start position:0%
stuff and it amidst an event yeah
someone<00:22:57.870><c> bought</c><00:22:58.020><c> a</c><00:22:58.049><c> car</c><00:22:58.290><c> and</c><00:22:59.030><c> then</c><00:23:00.030><c> sends</c><00:23:00.480><c> the</c>

00:23:00.650 --> 00:23:00.660 align:start position:0%
someone bought a car and then sends the
 

00:23:00.660 --> 00:23:03.320 align:start position:0%
someone bought a car and then sends the
money<00:23:00.840><c> off</c><00:23:01.049><c> out</c><00:23:01.620><c> to</c><00:23:02.100><c> somewhere</c><00:23:02.400><c> else</c><00:23:02.490><c> doesn't</c>

00:23:03.320 --> 00:23:03.330 align:start position:0%
money off out to somewhere else doesn't
 

00:23:03.330 --> 00:23:05.480 align:start position:0%
money off out to somewhere else doesn't
actually<00:23:03.660><c> make</c><00:23:04.169><c> any</c><00:23:04.230><c> storage</c><00:23:04.710><c> changes</c><00:23:05.100><c> about</c>

00:23:05.480 --> 00:23:05.490 align:start position:0%
actually make any storage changes about
 

00:23:05.490 --> 00:23:10.840 align:start position:0%
actually make any storage changes about
who<00:23:05.730><c> owns</c><00:23:05.970><c> the</c><00:23:06.809><c> cards</c><00:23:07.640><c> so</c><00:23:08.640><c> there's</c><00:23:08.820><c> no</c><00:23:08.970><c> like</c><00:23:09.210><c> I</c>

00:23:10.840 --> 00:23:10.850 align:start position:0%
who owns the cards so there's no like I
 

00:23:10.850 --> 00:23:13.490 align:start position:0%
who owns the cards so there's no like I
have<00:23:11.850><c> a</c><00:23:11.880><c> little</c><00:23:12.090><c> external</c><00:23:12.660><c> context</c><00:23:13.230><c> on</c><00:23:13.350><c> this</c>

00:23:13.490 --> 00:23:13.500 align:start position:0%
have a little external context on this
 

00:23:13.500 --> 00:23:15.650 align:start position:0%
have a little external context on this
yeah<00:23:14.070><c> the</c><00:23:14.549><c> author</c><00:23:14.700><c> of</c><00:23:14.880><c> this</c><00:23:15.059><c> contract</c><00:23:15.450><c> is</c>

00:23:15.650 --> 00:23:15.660 align:start position:0%
yeah the author of this contract is
 

00:23:15.660 --> 00:23:17.600 align:start position:0%
yeah the author of this contract is
present<00:23:16.320><c> at</c><00:23:16.440><c> Def</c><00:23:16.590><c> Con</c><00:23:16.620><c> and</c><00:23:17.100><c> in</c><00:23:17.160><c> selling</c>

00:23:17.600 --> 00:23:17.610 align:start position:0%
present at Def Con and in selling
 

00:23:17.610 --> 00:23:20.360 align:start position:0%
present at Def Con and in selling
physical<00:23:18.090><c> cards</c><00:23:18.450><c> if</c><00:23:19.110><c> you</c><00:23:19.380><c> transfer</c><00:23:19.890><c> one</c><00:23:20.070><c> ether</c>

00:23:20.360 --> 00:23:20.370 align:start position:0%
physical cards if you transfer one ether
 

00:23:20.370 --> 00:23:22.940 align:start position:0%
physical cards if you transfer one ether
using<00:23:20.640><c> the</c><00:23:20.730><c> buy</c><00:23:20.850><c> card</c><00:23:21.120><c> function</c><00:23:21.600><c> with</c><00:23:21.900><c> a</c><00:23:22.110><c> hash</c>

00:23:22.940 --> 00:23:22.950 align:start position:0%
using the buy card function with a hash
 

00:23:22.950 --> 00:23:25.100 align:start position:0%
using the buy card function with a hash
and<00:23:23.309><c> then</c><00:23:23.820><c> you</c><00:23:23.910><c> provide</c><00:23:24.270><c> him</c><00:23:24.450><c> in</c><00:23:24.600><c> person</c><00:23:24.809><c> was</c>

00:23:25.100 --> 00:23:25.110 align:start position:0%
and then you provide him in person was
 

00:23:25.110 --> 00:23:26.480 align:start position:0%
and then you provide him in person was
the<00:23:25.230><c> preimage</c><00:23:25.500><c> he</c><00:23:25.950><c> will</c><00:23:26.100><c> give</c><00:23:26.280><c> you</c><00:23:26.370><c> the</c>

00:23:26.480 --> 00:23:26.490 align:start position:0%
the preimage he will give you the
 

00:23:26.490 --> 00:23:28.250 align:start position:0%
the preimage he will give you the
physical<00:23:26.640><c> card</c><00:23:27.000><c> right</c><00:23:27.450><c> so</c><00:23:27.750><c> it's</c><00:23:27.900><c> a</c><00:23:28.020><c> one-off</c>

00:23:28.250 --> 00:23:28.260 align:start position:0%
physical card right so it's a one-off
 

00:23:28.260 --> 00:23:30.409 align:start position:0%
physical card right so it's a one-off
purchase<00:23:28.980><c> physically</c><00:23:29.610><c> that</c><00:23:29.820><c> you</c><00:23:29.970><c> get</c><00:23:30.240><c> the</c>

00:23:30.409 --> 00:23:30.419 align:start position:0%
purchase physically that you get the
 

00:23:30.419 --> 00:23:32.690 align:start position:0%
purchase physically that you get the
Gordon<00:23:30.929><c> right</c><00:23:31.530><c> so</c><00:23:31.770><c> that's</c><00:23:31.919><c> where</c><00:23:32.190><c> there's</c><00:23:32.460><c> no</c>

00:23:32.690 --> 00:23:32.700 align:start position:0%
Gordon right so that's where there's no
 

00:23:32.700 --> 00:23:36.080 align:start position:0%
Gordon right so that's where there's no
actual<00:23:33.450><c> state</c><00:23:33.780><c> change</c><00:23:34.910><c> meaningful</c><00:23:35.910><c> state</c>

00:23:36.080 --> 00:23:36.090 align:start position:0%
actual state change meaningful state
 

00:23:36.090 --> 00:23:39.010 align:start position:0%
actual state change meaningful state
change<00:23:36.299><c> in</c><00:23:36.450><c> the</c><00:23:36.510><c> bike</c><00:23:36.660><c> or</c><00:23:36.870><c> function</c><00:23:37.320><c> sorry</c>

00:23:39.010 --> 00:23:39.020 align:start position:0%
change in the bike or function sorry
 

00:23:39.020 --> 00:23:41.210 align:start position:0%
change in the bike or function sorry
along<00:23:40.020><c> the</c><00:23:40.169><c> question</c><00:23:40.440><c> of</c><00:23:40.530><c> asking</c><00:23:40.650><c> questions</c>

00:23:41.210 --> 00:23:41.220 align:start position:0%
along the question of asking questions
 

00:23:41.220 --> 00:23:45.380 align:start position:0%
along the question of asking questions
and<00:23:41.400><c> maybe</c><00:23:42.260><c> you</c><00:23:43.260><c> know</c><00:23:43.380><c> silly</c><00:23:43.830><c> but</c><00:23:44.150><c> use</c><00:23:45.150><c> of</c><00:23:45.179><c> a</c>

00:23:45.380 --> 00:23:45.390 align:start position:0%
and maybe you know silly but use of a
 

00:23:45.390 --> 00:23:47.720 align:start position:0%
and maybe you know silly but use of a
pre-image<00:23:45.870><c> for</c><00:23:46.260><c> securing</c><00:23:47.160><c> an</c><00:23:47.250><c> asset</c><00:23:47.549><c> means</c>

00:23:47.720 --> 00:23:47.730 align:start position:0%
pre-image for securing an asset means
 

00:23:47.730 --> 00:23:49.610 align:start position:0%
pre-image for securing an asset means
that<00:23:47.880><c> you</c><00:23:47.970><c> may</c><00:23:48.090><c> be</c><00:23:48.150><c> front-run</c><00:23:48.690><c> because</c><00:23:49.020><c> it's</c><00:23:49.320><c> a</c>

00:23:49.610 --> 00:23:49.620 align:start position:0%
that you may be front-run because it's a
 

00:23:49.620 --> 00:23:51.919 align:start position:0%
that you may be front-run because it's a
symmetric<00:23:50.460><c> secret</c><00:23:50.850><c> meaning</c><00:23:51.360><c> that</c><00:23:51.480><c> if</c><00:23:51.870><c> you</c>

00:23:51.919 --> 00:23:51.929 align:start position:0%
symmetric secret meaning that if you
 

00:23:51.929 --> 00:23:53.930 align:start position:0%
symmetric secret meaning that if you
observe<00:23:52.559><c> someone</c><00:23:53.010><c> attempting</c><00:23:53.429><c> to</c><00:23:53.460><c> claim</c><00:23:53.760><c> this</c>

00:23:53.930 --> 00:23:53.940 align:start position:0%
observe someone attempting to claim this
 

00:23:53.940 --> 00:23:55.700 align:start position:0%
observe someone attempting to claim this
and<00:23:54.179><c> you're</c><00:23:54.270><c> not</c><00:23:54.600><c> modifying</c><00:23:55.080><c> the</c><00:23:55.230><c> state</c><00:23:55.500><c> of</c>

00:23:55.700 --> 00:23:55.710 align:start position:0%
and you're not modifying the state of
 

00:23:55.710 --> 00:23:57.680 align:start position:0%
and you're not modifying the state of
the<00:23:55.860><c> actual</c><00:23:56.160><c> contract</c><00:23:56.549><c> someone</c><00:23:57.419><c> else</c><00:23:57.540><c> can</c>

00:23:57.680 --> 00:23:57.690 align:start position:0%
the actual contract someone else can
 

00:23:57.690 --> 00:23:58.940 align:start position:0%
the actual contract someone else can
observe<00:23:57.990><c> the</c><00:23:58.169><c> fact</c><00:23:58.380><c> that</c><00:23:58.470><c> you've</c><00:23:58.620><c> emitted</c>

00:23:58.940 --> 00:23:58.950 align:start position:0%
observe the fact that you've emitted
 

00:23:58.950 --> 00:24:00.620 align:start position:0%
observe the fact that you've emitted
that<00:23:59.040><c> transaction</c><00:23:59.700><c> and</c><00:23:59.880><c> attempt</c><00:24:00.179><c> to</c><00:24:00.210><c> perform</c>

00:24:00.620 --> 00:24:00.630 align:start position:0%
that transaction and attempt to perform
 

00:24:00.630 --> 00:24:03.620 align:start position:0%
that transaction and attempt to perform
the<00:24:00.780><c> same</c><00:24:00.929><c> action</c><00:24:01.320><c> to</c><00:24:01.530><c> claim</c><00:24:01.919><c> the</c><00:24:02.100><c> card</c><00:24:02.340><c> yep</c><00:24:02.760><c> so</c>

00:24:03.620 --> 00:24:03.630 align:start position:0%
the same action to claim the card yep so
 

00:24:03.630 --> 00:24:06.799 align:start position:0%
the same action to claim the card yep so
that<00:24:03.990><c> would</c><00:24:04.440><c> be</c><00:24:04.559><c> a</c><00:24:04.590><c> concern</c><00:24:05.190><c> actually</c><00:24:05.700><c> in</c><00:24:06.179><c> this</c>

00:24:06.799 --> 00:24:06.809 align:start position:0%
that would be a concern actually in this
 

00:24:06.809 --> 00:24:08.990 align:start position:0%
that would be a concern actually in this
specific<00:24:07.470><c> case</c><00:24:07.650><c> all</c><00:24:07.980><c> you</c><00:24:08.010><c> would</c><00:24:08.309><c> be</c><00:24:08.340><c> doing</c><00:24:08.520><c> is</c>

00:24:08.990 --> 00:24:09.000 align:start position:0%
specific case all you would be doing is
 

00:24:09.000 --> 00:24:11.419 align:start position:0%
specific case all you would be doing is
just<00:24:09.600><c> like</c><00:24:10.140><c> paying</c><00:24:10.440><c> for</c><00:24:10.530><c> someone</c><00:24:10.799><c> else's</c><00:24:11.160><c> card</c>

00:24:11.419 --> 00:24:11.429 align:start position:0%
just like paying for someone else's card
 

00:24:11.429 --> 00:24:14.180 align:start position:0%
just like paying for someone else's card
right<00:24:11.880><c> because</c><00:24:12.780><c> I</c><00:24:12.840><c> think</c><00:24:12.900><c> like</c><00:24:13.200><c> the</c><00:24:13.380><c> the</c><00:24:13.679><c> the</c>

00:24:14.180 --> 00:24:14.190 align:start position:0%
right because I think like the the the
 

00:24:14.190 --> 00:24:18.650 align:start position:0%
right because I think like the the the
data<00:24:14.370><c> isn't</c><00:24:15.679><c> exactly</c><00:24:16.679><c> a</c><00:24:16.850><c> secret</c><00:24:17.850><c> like</c><00:24:18.480><c> it's</c>

00:24:18.650 --> 00:24:18.660 align:start position:0%
data isn't exactly a secret like it's
 

00:24:18.660 --> 00:24:20.270 align:start position:0%
data isn't exactly a secret like it's
not<00:24:18.900><c> meant</c><00:24:19.140><c> to</c><00:24:19.169><c> be</c><00:24:19.260><c> a</c><00:24:19.350><c> secret</c><00:24:19.470><c> right</c><00:24:19.800><c> well</c><00:24:20.160><c> it's</c>

00:24:20.270 --> 00:24:20.280 align:start position:0%
not meant to be a secret right well it's
 

00:24:20.280 --> 00:24:21.430 align:start position:0%
not meant to be a secret right well it's
a<00:24:20.370><c> hash</c><00:24:20.520><c> of</c><00:24:20.700><c> a</c><00:24:20.760><c> see</c>

00:24:21.430 --> 00:24:21.440 align:start position:0%
a hash of a see
 

00:24:21.440 --> 00:24:23.680 align:start position:0%
a hash of a see
right<00:24:22.430><c> so</c><00:24:22.640><c> even</c><00:24:22.850><c> if</c><00:24:22.940><c> you</c><00:24:23.030><c> submit</c><00:24:23.330><c> somebody's</c>

00:24:23.680 --> 00:24:23.690 align:start position:0%
right so even if you submit somebody's
 

00:24:23.690 --> 00:24:24.940 align:start position:0%
right so even if you submit somebody's
else's<00:24:23.930><c> hash</c><00:24:24.140><c> of</c><00:24:24.290><c> a</c><00:24:24.350><c> secret</c><00:24:24.620><c> then</c><00:24:24.710><c> you</c><00:24:24.800><c> just</c>

00:24:24.940 --> 00:24:24.950 align:start position:0%
else's hash of a secret then you just
 

00:24:24.950 --> 00:24:26.200 align:start position:0%
else's hash of a secret then you just
want<00:24:25.070><c> to</c><00:24:25.100><c> be</c><00:24:25.190><c> able</c><00:24:25.250><c> to</c><00:24:25.340><c> reveal</c><00:24:25.670><c> it</c><00:24:25.790><c> in</c><00:24:25.850><c> person</c>

00:24:26.200 --> 00:24:26.210 align:start position:0%
want to be able to reveal it in person
 

00:24:26.210 --> 00:24:27.190 align:start position:0%
want to be able to reveal it in person
yes<00:24:26.390><c> and</c><00:24:26.660><c> if</c><00:24:26.810><c> you're</c><00:24:26.930><c> talking</c><00:24:27.140><c> about</c>

00:24:27.190 --> 00:24:27.200 align:start position:0%
yes and if you're talking about
 

00:24:27.200 --> 00:24:28.690 align:start position:0%
yes and if you're talking about
front-running<00:24:27.680><c> Lee</c><00:24:27.830><c> revealed</c><00:24:27.980><c> in</c><00:24:28.400><c> in</c><00:24:28.520><c> this</c>

00:24:28.690 --> 00:24:28.700 align:start position:0%
front-running Lee revealed in in this
 

00:24:28.700 --> 00:24:30.490 align:start position:0%
front-running Lee revealed in in this
case<00:24:28.940><c> this</c><00:24:29.180><c> is</c><00:24:29.240><c> an</c><00:24:29.450><c> innocent</c><00:24:29.960><c> reveal</c><00:24:30.170><c> so</c><00:24:30.410><c> you</c>

00:24:30.490 --> 00:24:30.500 align:start position:0%
case this is an innocent reveal so you
 

00:24:30.500 --> 00:24:31.930 align:start position:0%
case this is an innocent reveal so you
would<00:24:30.590><c> have</c><00:24:30.680><c> to</c><00:24:30.800><c> literally</c><00:24:31.100><c> jump</c><00:24:31.460><c> in</c><00:24:31.610><c> front</c><00:24:31.820><c> of</c>

00:24:31.930 --> 00:24:31.940 align:start position:0%
would have to literally jump in front of
 

00:24:31.940 --> 00:24:37.360 align:start position:0%
would have to literally jump in front of
them<00:24:32.060><c> and</c><00:24:32.180><c> shout</c><00:24:32.420><c> the</c><00:24:32.600><c> secret</c><00:24:35.890><c> but</c><00:24:36.890><c> yeah</c><00:24:37.040><c> it's</c>

00:24:37.360 --> 00:24:37.370 align:start position:0%
them and shout the secret but yeah it's
 

00:24:37.370 --> 00:24:39.310 align:start position:0%
them and shout the secret but yeah it's
a<00:24:37.400><c> good</c><00:24:37.520><c> point</c><00:24:37.760><c> like</c><00:24:38.030><c> about</c><00:24:38.420><c> hair</c><00:24:38.810><c> or</c><00:24:39.050><c> commit</c>

00:24:39.310 --> 00:24:39.320 align:start position:0%
a good point like about hair or commit
 

00:24:39.320 --> 00:24:42.120 align:start position:0%
a good point like about hair or commit
and<00:24:39.410><c> reveal</c><00:24:39.620><c> schemes</c><00:24:39.950><c> in</c><00:24:40.100><c> general</c><00:24:40.430><c> you</c><00:24:40.670><c> if</c><00:24:40.940><c> you</c>

00:24:42.120 --> 00:24:42.130 align:start position:0%
and reveal schemes in general you if you
 

00:24:42.130 --> 00:24:44.590 align:start position:0%
and reveal schemes in general you if you
you<00:24:43.130><c> need</c><00:24:43.340><c> either</c><00:24:43.610><c> the</c><00:24:43.760><c> commit</c><00:24:44.180><c> needs</c><00:24:44.390><c> to</c>

00:24:44.590 --> 00:24:44.600 align:start position:0%
you need either the commit needs to
 

00:24:44.600 --> 00:24:46.330 align:start position:0%
you need either the commit needs to
contain<00:24:44.900><c> some</c><00:24:45.140><c> data</c><00:24:45.350><c> that</c><00:24:45.620><c> makes</c><00:24:46.040><c> it</c><00:24:46.190><c> possible</c>

00:24:46.330 --> 00:24:46.340 align:start position:0%
contain some data that makes it possible
 

00:24:46.340 --> 00:24:48.160 align:start position:0%
contain some data that makes it possible
impossible<00:24:46.970><c> for</c><00:24:47.330><c> someone</c><00:24:47.480><c> else</c><00:24:47.660><c> to</c><00:24:47.810><c> front-run</c>

00:24:48.160 --> 00:24:48.170 align:start position:0%
impossible for someone else to front-run
 

00:24:48.170 --> 00:24:50.440 align:start position:0%
impossible for someone else to front-run
it<00:24:48.290><c> such</c><00:24:48.560><c> as</c><00:24:48.710><c> the</c><00:24:48.830><c> target</c><00:24:49.130><c> address</c><00:24:49.220><c> or</c><00:24:50.120><c> you</c>

00:24:50.440 --> 00:24:50.450 align:start position:0%
it such as the target address or you
 

00:24:50.450 --> 00:24:51.820 align:start position:0%
it such as the target address or you
need<00:24:50.630><c> to</c><00:24:50.720><c> use</c><00:24:50.840><c> something</c><00:24:51.080><c> other</c><00:24:51.260><c> than</c><00:24:51.440><c> just</c><00:24:51.740><c> a</c>

00:24:51.820 --> 00:24:51.830 align:start position:0%
need to use something other than just a
 

00:24:51.830 --> 00:24:54.600 align:start position:0%
need to use something other than just a
simple<00:24:52.010><c> hash</c><00:24:52.250><c> reveal</c><00:24:52.550><c> like</c><00:24:52.910><c> using</c><00:24:53.210><c> a</c><00:24:53.450><c> key</c><00:24:54.170><c> pair</c>

00:24:54.600 --> 00:24:54.610 align:start position:0%
simple hash reveal like using a key pair
 

00:24:54.610 --> 00:24:56.860 align:start position:0%
simple hash reveal like using a key pair
so<00:24:55.610><c> quick</c><00:24:55.790><c> question</c><00:24:55.820><c> I</c><00:24:56.150><c> didn't</c><00:24:56.420><c> realize</c><00:24:56.750><c> the</c>

00:24:56.860 --> 00:24:56.870 align:start position:0%
so quick question I didn't realize the
 

00:24:56.870 --> 00:24:58.300 align:start position:0%
so quick question I didn't realize the
context<00:24:57.170><c> of</c><00:24:57.260><c> this</c><00:24:57.350><c> contract</c><00:24:57.830><c> but</c><00:24:58.100><c> you</c><00:24:58.190><c> just</c>

00:24:58.300 --> 00:24:58.310 align:start position:0%
context of this contract but you just
 

00:24:58.310 --> 00:25:00.010 align:start position:0%
context of this contract but you just
mentioned<00:24:58.670><c> that</c><00:24:58.730><c> how-to</c><00:24:58.970><c> is</c><00:24:59.150><c> house</c><00:24:59.690><c> the</c><00:24:59.840><c> owner</c>

00:25:00.010 --> 00:25:00.020 align:start position:0%
mentioned that how-to is house the owner
 

00:25:00.020 --> 00:25:01.570 align:start position:0%
mentioned that how-to is house the owner
actually<00:25:00.560><c> issued</c><00:25:01.040><c> the</c><00:25:01.130><c> card</c><00:25:01.280><c> to</c><00:25:01.460><c> the</c><00:25:01.550><c> person</c>

00:25:01.570 --> 00:25:01.580 align:start position:0%
actually issued the card to the person
 

00:25:01.580 --> 00:25:04.060 align:start position:0%
actually issued the card to the person
he'd<00:25:02.270><c> hands</c><00:25:02.660><c> it</c><00:25:02.750><c> to</c><00:25:02.870><c> them</c><00:25:02.990><c> in</c><00:25:03.110><c> person</c><00:25:03.350><c> I</c><00:25:03.830><c> move</c>

00:25:04.060 --> 00:25:04.070 align:start position:0%
he'd hands it to them in person I move
 

00:25:04.070 --> 00:25:06.220 align:start position:0%
he'd hands it to them in person I move
it<00:25:04.190><c> in</c><00:25:04.250><c> the</c><00:25:04.310><c> contract</c><00:25:04.640><c> or</c><00:25:04.910><c> or</c><00:25:05.900><c> they</c><00:25:06.020><c> don't</c>

00:25:06.220 --> 00:25:06.230 align:start position:0%
it in the contract or or they don't
 

00:25:06.230 --> 00:25:16.600 align:start position:0%
it in the contract or or they don't
they're<00:25:06.920><c> buying</c><00:25:07.220><c> a</c><00:25:07.370><c> physical</c><00:25:07.700><c> object</c><00:25:15.430><c> each</c><00:25:16.430><c> of</c>

00:25:16.600 --> 00:25:16.610 align:start position:0%
they're buying a physical object each of
 

00:25:16.610 --> 00:25:18.190 align:start position:0%
they're buying a physical object each of
these<00:25:16.730><c> each</c><00:25:17.030><c> of</c><00:25:17.090><c> these</c><00:25:17.270><c> cards</c><00:25:17.750><c> he's</c><00:25:17.900><c> handing</c>

00:25:18.190 --> 00:25:18.200 align:start position:0%
these each of these cards he's handing
 

00:25:18.200 --> 00:25:20.590 align:start position:0%
these each of these cards he's handing
out<00:25:18.290><c> has</c><00:25:18.680><c> a</c><00:25:18.710><c> key</c><00:25:18.980><c> pair</c><00:25:19.220><c> on</c><00:25:19.340><c> it</c><00:25:19.490><c> and</c><00:25:19.790><c> each</c><00:25:20.210><c> of</c>

00:25:20.590 --> 00:25:20.600 align:start position:0%
out has a key pair on it and each of
 

00:25:20.600 --> 00:25:22.540 align:start position:0%
out has a key pair on it and each of
those<00:25:21.050><c> cards</c><00:25:21.530><c> is</c><00:25:21.650><c> listed</c><00:25:22.010><c> in</c><00:25:22.040><c> the</c><00:25:22.130><c> contract</c>

00:25:22.540 --> 00:25:22.550 align:start position:0%
those cards is listed in the contract
 

00:25:22.550 --> 00:25:24.880 align:start position:0%
those cards is listed in the contract
here<00:25:22.760><c> and</c><00:25:22.970><c> owns</c><00:25:23.090><c> one</c><00:25:23.450><c> token</c><00:25:23.720><c> and</c><00:25:24.410><c> then</c><00:25:24.650><c> he</c><00:25:24.740><c> will</c>

00:25:24.880 --> 00:25:24.890 align:start position:0%
here and owns one token and then he will
 

00:25:24.890 --> 00:25:26.170 align:start position:0%
here and owns one token and then he will
physically<00:25:25.340><c> give</c><00:25:25.490><c> you</c><00:25:25.580><c> the</c><00:25:25.670><c> physical</c><00:25:26.000><c> card</c>

00:25:26.170 --> 00:25:26.180 align:start position:0%
physically give you the physical card
 

00:25:26.180 --> 00:25:27.850 align:start position:0%
physically give you the physical card
and<00:25:26.420><c> you</c><00:25:26.480><c> will</c><00:25:26.600><c> now</c><00:25:26.810><c> own</c><00:25:26.990><c> the</c><00:25:27.170><c> key</c><00:25:27.320><c> PFF</c><00:25:27.740><c> owns</c>

00:25:27.850 --> 00:25:27.860 align:start position:0%
and you will now own the key PFF owns
 

00:25:27.860 --> 00:25:31.990 align:start position:0%
and you will now own the key PFF owns
the<00:25:28.130><c> token</c><00:25:30.670><c> representing</c><00:25:31.670><c> that</c><00:25:31.760><c> you</c><00:25:31.850><c> have</c><00:25:31.970><c> a</c>

00:25:31.990 --> 00:25:32.000 align:start position:0%
the token representing that you have a
 

00:25:32.000 --> 00:25:41.620 align:start position:0%
the token representing that you have a
card<00:25:35.500><c> oh</c><00:25:38.260><c> yeah</c><00:25:40.030><c> they</c><00:25:41.030><c> should</c><00:25:41.060><c> probably</c><00:25:41.330><c> be</c><00:25:41.540><c> in</c>

00:25:41.620 --> 00:25:41.630 align:start position:0%
card oh yeah they should probably be in
 

00:25:41.630 --> 00:25:48.100 align:start position:0%
card oh yeah they should probably be in
if<00:25:41.900><c> days</c><00:25:42.140><c> yeah</c><00:25:42.560><c> it's</c><00:25:42.800><c> a</c><00:25:42.920><c> weird</c><00:25:46.360><c> I</c><00:25:47.360><c> just</c><00:25:47.840><c> like</c><00:25:47.990><c> to</c>

00:25:48.100 --> 00:25:48.110 align:start position:0%
if days yeah it's a weird I just like to
 

00:25:48.110 --> 00:25:50.530 align:start position:0%
if days yeah it's a weird I just like to
imagine<00:25:48.320><c> one</c><00:25:49.000><c> one</c><00:25:50.000><c> more</c><00:25:50.150><c> thing</c><00:25:50.330><c> on</c><00:25:50.450><c> this</c>

00:25:50.530 --> 00:25:50.540 align:start position:0%
imagine one one more thing on this
 

00:25:50.540 --> 00:25:51.910 align:start position:0%
imagine one one more thing on this
contract<00:25:50.810><c> before</c><00:25:50.960><c> we</c><00:25:51.140><c> move</c><00:25:51.380><c> on</c><00:25:51.500><c> to</c><00:25:51.620><c> the</c><00:25:51.710><c> next</c>

00:25:51.910 --> 00:25:51.920 align:start position:0%
contract before we move on to the next
 

00:25:51.920 --> 00:25:53.140 align:start position:0%
contract before we move on to the next
and<00:25:52.070><c> if</c><00:25:52.130><c> one</c><00:25:52.370><c> of</c><00:25:52.460><c> you</c><00:25:52.550><c> guys</c><00:25:52.730><c> can</c><00:25:52.940><c> start</c>

00:25:53.140 --> 00:25:53.150 align:start position:0%
and if one of you guys can start
 

00:25:53.150 --> 00:25:55.570 align:start position:0%
and if one of you guys can start
bringing<00:25:53.660><c> up</c><00:25:53.720><c> the</c><00:25:53.870><c> next</c><00:25:54.080><c> contract</c><00:25:54.520><c> so</c><00:25:55.520><c> we</c>

00:25:55.570 --> 00:25:55.580 align:start position:0%
bringing up the next contract so we
 

00:25:55.580 --> 00:25:59.950 align:start position:0%
bringing up the next contract so we
switch<00:25:55.850><c> over</c><00:25:55.970><c> to</c><00:25:56.090><c> that</c><00:25:56.180><c> and</c><00:25:58.630><c> this</c><00:25:59.630><c> I</c><00:25:59.870><c> think</c>

00:25:59.950 --> 00:25:59.960 align:start position:0%
switch over to that and this I think
 

00:25:59.960 --> 00:26:01.930 align:start position:0%
switch over to that and this I think
it's<00:26:00.260><c> very</c><00:26:00.350><c> good</c><00:26:00.440><c> to</c><00:26:01.070><c> have</c><00:26:01.100><c> an</c><00:26:01.250><c> emergen</c>

00:26:01.930 --> 00:26:01.940 align:start position:0%
it's very good to have an emergen
 

00:26:01.940 --> 00:26:04.180 align:start position:0%
it's very good to have an emergen
on<00:26:02.150><c> a</c><00:26:02.210><c> contract</c><00:26:02.680><c> because</c><00:26:03.680><c> you</c><00:26:03.890><c> never</c><00:26:04.010><c> know</c>

00:26:04.180 --> 00:26:04.190 align:start position:0%
on a contract because you never know
 

00:26:04.190 --> 00:26:07.240 align:start position:0%
on a contract because you never know
what<00:26:04.370><c> people</c><00:26:04.400><c> are</c><00:26:04.730><c> going</c><00:26:04.850><c> to</c><00:26:04.940><c> send</c><00:26:05.120><c> to</c><00:26:05.300><c> it</c><00:26:06.250><c> so</c>

00:26:07.240 --> 00:26:07.250 align:start position:0%
what people are going to send to it so
 

00:26:07.250 --> 00:26:09.370 align:start position:0%
what people are going to send to it so
even<00:26:07.430><c> if</c><00:26:07.520><c> you</c><00:26:07.640><c> don't</c><00:26:07.790><c> expect</c><00:26:08.240><c> I</c><00:26:08.660><c> mean</c><00:26:09.140><c> you</c><00:26:09.230><c> can</c>

00:26:09.370 --> 00:26:09.380 align:start position:0%
even if you don't expect I mean you can
 

00:26:09.380 --> 00:26:11.890 align:start position:0%
even if you don't expect I mean you can
prevent<00:26:09.770><c> getting</c><00:26:10.330><c> ether</c><00:26:11.330><c> but</c><00:26:11.660><c> you</c><00:26:11.720><c> can't</c>

00:26:11.890 --> 00:26:11.900 align:start position:0%
prevent getting ether but you can't
 

00:26:11.900 --> 00:26:13.750 align:start position:0%
prevent getting ether but you can't
prevent<00:26:12.110><c> getting</c><00:26:12.290><c> tokens</c><00:26:12.890><c> so</c><00:26:13.100><c> if</c><00:26:13.250><c> the</c><00:26:13.400><c> tokens</c>

00:26:13.750 --> 00:26:13.760 align:start position:0%
prevent getting tokens so if the tokens
 

00:26:13.760 --> 00:26:15.370 align:start position:0%
prevent getting tokens so if the tokens
wind<00:26:13.970><c> up</c><00:26:14.090><c> there</c><00:26:14.300><c> is</c><00:26:14.360><c> nice</c><00:26:14.600><c> if</c><00:26:14.840><c> the</c><00:26:14.990><c> owner</c><00:26:15.140><c> can</c>

00:26:15.370 --> 00:26:15.380 align:start position:0%
wind up there is nice if the owner can
 

00:26:15.380 --> 00:26:18.520 align:start position:0%
wind up there is nice if the owner can
ship<00:26:15.950><c> them</c><00:26:16.100><c> up</c><00:26:16.250><c> somewhere</c><00:26:16.580><c> else</c><00:26:16.810><c> and</c><00:26:17.810><c> I</c><00:26:18.470><c> think</c>

00:26:18.520 --> 00:26:18.530 align:start position:0%
ship them up somewhere else and I think
 

00:26:18.530 --> 00:26:21.400 align:start position:0%
ship them up somewhere else and I think
this<00:26:18.860><c> kind</c><00:26:19.070><c> of</c><00:26:19.220><c> also</c><00:26:19.310><c> nicely</c><00:26:19.610><c> demonstrates</c><00:26:20.410><c> a</c>

00:26:21.400 --> 00:26:21.410 align:start position:0%
this kind of also nicely demonstrates a
 

00:26:21.410 --> 00:26:23.290 align:start position:0%
this kind of also nicely demonstrates a
minor<00:26:22.160><c> pet</c><00:26:22.430><c> peeve</c><00:26:22.670><c> that</c><00:26:22.880><c> I</c><00:26:22.910><c> have</c><00:26:23.120><c> with</c>

00:26:23.290 --> 00:26:23.300 align:start position:0%
minor pet peeve that I have with
 

00:26:23.300 --> 00:26:28.720 align:start position:0%
minor pet peeve that I have with
solidity<00:26:23.720><c> and</c><00:26:25.300><c> it</c><00:26:26.300><c> is</c><00:26:26.540><c> that</c><00:26:27.340><c> owner</c><00:26:28.340><c> in</c><00:26:28.550><c> this</c>

00:26:28.720 --> 00:26:28.730 align:start position:0%
solidity and it is that owner in this
 

00:26:28.730 --> 00:26:32.050 align:start position:0%
solidity and it is that owner in this
case<00:26:29.030><c> is</c><00:26:29.360><c> an</c><00:26:29.630><c> address</c><00:26:30.110><c> and</c><00:26:30.920><c> doing</c><00:26:31.280><c> the</c><00:26:31.580><c> only</c>

00:26:32.050 --> 00:26:32.060 align:start position:0%
case is an address and doing the only
 

00:26:32.060 --> 00:26:34.600 align:start position:0%
case is an address and doing the only
butt<00:26:32.420><c> transfer</c><00:26:32.900><c> actually</c><00:26:33.710><c> means</c><00:26:33.920><c> you</c>

00:26:34.600 --> 00:26:34.610 align:start position:0%
butt transfer actually means you
 

00:26:34.610 --> 00:26:39.100 align:start position:0%
butt transfer actually means you
doing<00:26:34.820><c> a</c><00:26:35.000><c> call</c><00:26:35.270><c> with</c><00:26:36.070><c> next</c><00:26:37.070><c> to</c><00:26:37.190><c> no</c><00:26:37.340><c> gas</c><00:26:37.720><c> which</c><00:26:38.720><c> I</c>

00:26:39.100 --> 00:26:39.110 align:start position:0%
doing a call with next to no gas which I
 

00:26:39.110 --> 00:26:41.760 align:start position:0%
doing a call with next to no gas which I
cannot<00:26:39.679><c> is</c><00:26:40.010><c> not</c><00:26:40.190><c> vulnerable</c><00:26:40.340><c> to</c><00:26:40.730><c> rien</c>

00:26:41.760 --> 00:26:41.770 align:start position:0%
cannot is not vulnerable to rien
 

00:26:41.770 --> 00:26:45.070 align:start position:0%
cannot is not vulnerable to rien
principal<00:26:42.770><c> so</c><00:26:43.100><c> protects</c><00:26:43.670><c> it</c><00:26:43.790><c> if</c><00:26:43.940><c> it</c><00:26:44.390><c> fails</c><00:26:44.720><c> it</c>

00:26:45.070 --> 00:26:45.080 align:start position:0%
principal so protects it if it fails it
 

00:26:45.080 --> 00:26:48.700 align:start position:0%
principal so protects it if it fails it
would<00:26:45.290><c> throw</c><00:26:45.640><c> whereas</c><00:26:46.640><c> in</c><00:26:47.299><c> this</c><00:26:47.809><c> style</c><00:26:48.080><c> where</c>

00:26:48.700 --> 00:26:48.710 align:start position:0%
would throw whereas in this style where
 

00:26:48.710 --> 00:26:50.770 align:start position:0%
would throw whereas in this style where
it's<00:26:48.830><c> an</c><00:26:48.920><c> ear</c><00:26:49.040><c> see</c><00:26:49.340><c> 20</c><00:26:49.730><c> interface</c><00:26:50.120><c> and</c><00:26:50.390><c> this</c>

00:26:50.770 --> 00:26:50.780 align:start position:0%
it's an ear see 20 interface and this
 

00:26:50.780 --> 00:26:53.830 align:start position:0%
it's an ear see 20 interface and this
looks<00:26:51.140><c> oddly</c><00:26:51.470><c> similar</c><00:26:52.309><c> I</c><00:26:52.910><c> mean</c><00:26:53.690><c> it's</c>

00:26:53.830 --> 00:26:53.840 align:start position:0%
looks oddly similar I mean it's
 

00:26:53.840 --> 00:26:56.110 align:start position:0%
looks oddly similar I mean it's
something<00:26:54.500><c> dot</c><00:26:54.890><c> transfer</c><00:26:55.429><c> but</c><00:26:55.610><c> actually</c><00:26:56.000><c> this</c>

00:26:56.110 --> 00:26:56.120 align:start position:0%
something dot transfer but actually this
 

00:26:56.120 --> 00:26:58.720 align:start position:0%
something dot transfer but actually this
is<00:26:56.179><c> a</c><00:26:56.390><c> full-blown</c><00:26:56.780><c> call</c><00:26:57.650><c> with</c><00:26:58.370><c> all</c><00:26:58.490><c> available</c>

00:26:58.720 --> 00:26:58.730 align:start position:0%
is a full-blown call with all available
 

00:26:58.730 --> 00:27:03.070 align:start position:0%
is a full-blown call with all available
gas<00:26:59.299><c> and</c><00:27:00.880><c> totally</c><00:27:01.880><c> different</c><00:27:02.240><c> semantics</c><00:27:02.809><c> it</c>

00:27:03.070 --> 00:27:03.080 align:start position:0%
gas and totally different semantics it
 

00:27:03.080 --> 00:27:05.590 align:start position:0%
gas and totally different semantics it
also<00:27:03.230><c> has</c><00:27:03.740><c> a</c><00:27:03.770><c> return</c><00:27:04.220><c> value</c><00:27:04.490><c> which</c><00:27:04.940><c> you</c><00:27:05.150><c> might</c>

00:27:05.590 --> 00:27:05.600 align:start position:0%
also has a return value which you might
 

00:27:05.600 --> 00:27:10.120 align:start position:0%
also has a return value which you might
might<00:27:05.990><c> not</c><00:27:06.200><c> read</c><00:27:06.440><c> out</c><00:27:07.450><c> and</c><00:27:08.559><c> as</c><00:27:09.559><c> an</c><00:27:09.679><c> auditor</c>

00:27:10.120 --> 00:27:10.130 align:start position:0%
might not read out and as an auditor
 

00:27:10.130 --> 00:27:12.669 align:start position:0%
might not read out and as an auditor
it's<00:27:10.630><c> when</c><00:27:11.630><c> you're</c><00:27:11.720><c> doing</c><00:27:11.900><c> manual</c><00:27:12.350><c> or</c><00:27:12.440><c> did</c><00:27:12.590><c> you</c>

00:27:12.669 --> 00:27:12.679 align:start position:0%
it's when you're doing manual or did you
 

00:27:12.679 --> 00:27:14.320 align:start position:0%
it's when you're doing manual or did you
have<00:27:12.799><c> to</c><00:27:12.890><c> be</c><00:27:12.980><c> really</c><00:27:13.280><c> careful</c><00:27:13.790><c> about</c><00:27:13.910><c> all</c>

00:27:14.320 --> 00:27:14.330 align:start position:0%
have to be really careful about all
 

00:27:14.330 --> 00:27:16.150 align:start position:0%
have to be really careful about all
these<00:27:14.450><c> things</c><00:27:14.720><c> is</c><00:27:14.960><c> this</c><00:27:15.080><c> an</c><00:27:15.230><c> address</c><00:27:15.740><c> or</c><00:27:16.010><c> is</c>

00:27:16.150 --> 00:27:16.160 align:start position:0%
these things is this an address or is
 

00:27:16.160 --> 00:27:19.810 align:start position:0%
these things is this an address or is
this<00:27:16.400><c> an</c><00:27:17.179><c> address</c><00:27:17.630><c> in</c><00:27:17.809><c> the</c><00:27:17.929><c> geese</c><00:27:18.200><c> of</c><00:27:18.590><c> an</c><00:27:18.890><c> of</c><00:27:19.340><c> an</c>

00:27:19.810 --> 00:27:19.820 align:start position:0%
this an address in the geese of an of an
 

00:27:19.820 --> 00:27:26.580 align:start position:0%
this an address in the geese of an of an
interface<00:27:20.660><c> and</c><00:27:21.190><c> actually</c><00:27:22.190><c> a</c><00:27:22.370><c> full-blown</c><00:27:22.970><c> call</c>

00:27:26.580 --> 00:27:26.590 align:start position:0%
 
 

00:27:26.590 --> 00:27:29.560 align:start position:0%
 
that's<00:27:27.590><c> that's</c><00:27:27.919><c> kind</c><00:27:28.190><c> of</c><00:27:28.220><c> a</c><00:27:28.330><c> thing</c><00:27:29.330><c> that</c><00:27:29.360><c> you</c>

00:27:29.560 --> 00:27:29.570 align:start position:0%
that's that's kind of a thing that you
 

00:27:29.570 --> 00:27:31.810 align:start position:0%
that's that's kind of a thing that you
can<00:27:29.720><c> trip</c><00:27:29.990><c> on</c><00:27:30.169><c> are</c><00:27:30.410><c> they</c><00:27:30.620><c> are</c><00:27:30.980><c> wasn't</c><00:27:31.700><c> there</c>

00:27:31.810 --> 00:27:31.820 align:start position:0%
can trip on are they are wasn't there
 

00:27:31.820 --> 00:27:36.340 align:start position:0%
can trip on are they are wasn't there
like<00:27:32.320><c> like</c><00:27:33.320><c> a</c><00:27:34.299><c> talk</c><00:27:35.299><c> of</c><00:27:35.330><c> deprecating</c><00:27:36.020><c> that</c><00:27:36.169><c> or</c>

00:27:36.340 --> 00:27:36.350 align:start position:0%
like like a talk of deprecating that or
 

00:27:36.350 --> 00:27:37.210 align:start position:0%
like like a talk of deprecating that or
or<00:27:36.590><c> no</c>

00:27:37.210 --> 00:27:37.220 align:start position:0%
or no
 

00:27:37.220 --> 00:27:52.440 align:start position:0%
or no
a<00:27:37.250><c> recent</c><00:27:37.790><c> I'm</c><00:27:38.000><c> with</c><00:27:38.720><c> it</c><00:27:38.809><c> I</c><00:27:38.900><c> simply</c><00:27:48.520><c> okay</c><00:27:51.100><c> so</c>

00:27:52.440 --> 00:27:52.450 align:start position:0%
a recent I'm with it I simply okay so
 

00:27:52.450 --> 00:27:54.789 align:start position:0%
a recent I'm with it I simply okay so
transfer<00:27:53.450><c> was</c><00:27:53.630><c> a</c><00:27:53.660><c> recent</c><00:27:54.049><c> introduction</c><00:27:54.410><c> to</c>

00:27:54.789 --> 00:27:54.799 align:start position:0%
transfer was a recent introduction to
 

00:27:54.799 --> 00:27:56.380 align:start position:0%
transfer was a recent introduction to
the<00:27:54.890><c> address</c><00:27:55.190><c> object</c><00:27:55.640><c> is</c><00:27:55.850><c> there</c>

00:27:56.380 --> 00:27:56.390 align:start position:0%
the address object is there
 

00:27:56.390 --> 00:27:58.210 align:start position:0%
the address object is there
how<00:27:56.780><c> will</c><00:27:57.020><c> you</c><00:27:57.169><c> transfer</c><00:27:57.410><c> to</c><00:27:57.799><c> an</c><00:27:57.890><c> address</c><00:27:58.070><c> in</c>

00:27:58.210 --> 00:27:58.220 align:start position:0%
how will you transfer to an address in
 

00:27:58.220 --> 00:28:12.730 align:start position:0%
how will you transfer to an address in
future<00:28:00.549><c> let's</c><00:28:01.549><c> see</c><00:28:10.809><c> okay</c><00:28:11.809><c> so</c><00:28:12.140><c> there</c><00:28:12.500><c> anyone</c>

00:28:12.730 --> 00:28:12.740 align:start position:0%
future let's see okay so there anyone
 

00:28:12.740 --> 00:28:14.080 align:start position:0%
future let's see okay so there anyone
that<00:28:12.860><c> didn't</c><00:28:13.100><c> hear</c><00:28:13.250><c> there</c><00:28:13.520><c> will</c><00:28:13.610><c> be</c><00:28:13.669><c> a</c><00:28:13.790><c> new</c>

00:28:14.080 --> 00:28:14.090 align:start position:0%
that didn't hear there will be a new
 

00:28:14.090 --> 00:28:16.570 align:start position:0%
that didn't hear there will be a new
data<00:28:14.929><c> type</c><00:28:15.080><c> payable</c><00:28:15.740><c> address</c><00:28:16.070><c> which</c><00:28:16.309><c> you</c><00:28:16.460><c> can</c>

00:28:16.570 --> 00:28:16.580 align:start position:0%
data type payable address which you can
 

00:28:16.580 --> 00:28:18.130 align:start position:0%
data type payable address which you can
cast<00:28:16.730><c> an</c><00:28:16.910><c> address</c><00:28:17.179><c> to</c><00:28:17.390><c> and</c><00:28:17.600><c> it</c><00:28:17.660><c> only</c><00:28:17.750><c> has</c><00:28:17.990><c> that</c>

00:28:18.130 --> 00:28:18.140 align:start position:0%
cast an address to and it only has that
 

00:28:18.140 --> 00:28:25.980 align:start position:0%
cast an address to and it only has that
method<00:28:18.530><c> if</c><00:28:18.650><c> it's</c><00:28:18.830><c> a</c><00:28:18.919><c> payroll</c><00:28:19.130><c> type</c><00:28:21.610><c> sorry</c>

00:28:25.980 --> 00:28:25.990 align:start position:0%
 
 

00:28:25.990 --> 00:28:27.940 align:start position:0%
 
so<00:28:26.990><c> the</c><00:28:27.080><c> comment</c><00:28:27.320><c> is</c><00:28:27.380><c> you</c><00:28:27.500><c> have</c><00:28:27.620><c> to</c><00:28:27.710><c> make</c><00:28:27.860><c> it</c>

00:28:27.940 --> 00:28:27.950 align:start position:0%
so the comment is you have to make it
 

00:28:27.950 --> 00:28:29.260 align:start position:0%
so the comment is you have to make it
explicit<00:28:28.220><c> in</c><00:28:28.490><c> the</c><00:28:28.549><c> constructor</c><00:28:29.030><c> for</c><00:28:29.150><c> that</c>

00:28:29.260 --> 00:28:29.270 align:start position:0%
explicit in the constructor for that
 

00:28:29.270 --> 00:28:31.780 align:start position:0%
explicit in the constructor for that
happened<00:28:29.600><c> but</c><00:28:30.080><c> what</c><00:28:30.950><c> I</c><00:28:30.980><c> mean</c><00:28:31.100><c> the</c><00:28:31.309><c> constructor</c>

00:28:31.780 --> 00:28:31.790 align:start position:0%
happened but what I mean the constructor
 

00:28:31.790 --> 00:28:34.120 align:start position:0%
happened but what I mean the constructor
of<00:28:31.820><c> what</c><00:28:32.120><c> if</c><00:28:32.390><c> you</c><00:28:32.570><c> have</c><00:28:32.660><c> an</c><00:28:32.780><c> address</c><00:28:32.929><c> as</c><00:28:33.500><c> some</c>

00:28:34.120 --> 00:28:34.130 align:start position:0%
of what if you have an address as some
 

00:28:34.130 --> 00:28:45.010 align:start position:0%
of what if you have an address as some
objects<00:28:41.230><c> within</c><00:28:42.880><c> like</c><00:28:43.880><c> a</c><00:28:43.910><c> function</c><00:28:44.660><c> and</c><00:28:44.960><c> the</c>

00:28:45.010 --> 00:28:45.020 align:start position:0%
objects within like a function and the
 

00:28:45.020 --> 00:28:46.720 align:start position:0%
objects within like a function and the
function<00:28:45.050><c> itself</c><00:28:45.650><c> does</c><00:28:45.800><c> not</c><00:28:45.830><c> have</c><00:28:46.010><c> payable</c><00:28:46.550><c> it</c>

00:28:46.720 --> 00:28:46.730 align:start position:0%
function itself does not have payable it
 

00:28:46.730 --> 00:28:48.130 align:start position:0%
function itself does not have payable it
won't<00:28:46.910><c> be</c><00:28:47.030><c> registered</c>

00:28:48.130 --> 00:28:48.140 align:start position:0%
won't be registered
 

00:28:48.140 --> 00:28:50.660 align:start position:0%
won't be registered
like<00:28:49.140><c> you</c><00:28:49.320><c> won't</c><00:28:49.500><c> allow</c><00:28:49.920><c> that</c><00:28:50.130><c> to</c><00:28:50.550><c> actually</c>

00:28:50.660 --> 00:28:50.670 align:start position:0%
like you won't allow that to actually
 

00:28:50.670 --> 00:28:54.110 align:start position:0%
like you won't allow that to actually
happen<00:28:51.590><c> no</c><00:28:52.590><c> you</c><00:28:52.650><c> can</c><00:28:52.980><c> you</c><00:28:53.310><c> can</c><00:28:53.460><c> always</c><00:28:53.730><c> send</c>

00:28:54.110 --> 00:28:54.120 align:start position:0%
happen no you can you can always send
 

00:28:54.120 --> 00:28:56.300 align:start position:0%
happen no you can you can always send
funds<00:28:54.600><c> out</c><00:28:54.900><c> from</c><00:28:55.230><c> a</c><00:28:55.290><c> non</c><00:28:55.440><c> payable</c><00:28:55.890><c> function</c>

00:28:56.300 --> 00:28:56.310 align:start position:0%
funds out from a non payable function
 

00:28:56.310 --> 00:28:58.250 align:start position:0%
funds out from a non payable function
we're<00:28:56.970><c> talking</c><00:28:57.300><c> here</c><00:28:57.450><c> about</c><00:28:57.510><c> whether</c><00:28:57.900><c> you</c><00:28:58.080><c> can</c>

00:28:58.250 --> 00:28:58.260 align:start position:0%
we're talking here about whether you can
 

00:28:58.260 --> 00:29:00.290 align:start position:0%
we're talking here about whether you can
simply<00:28:58.980><c> calling</c><00:28:59.220><c> the</c><00:28:59.430><c> transfer</c><00:28:59.790><c> method</c><00:29:00.060><c> on</c><00:29:00.180><c> an</c>

00:29:00.290 --> 00:29:00.300 align:start position:0%
simply calling the transfer method on an
 

00:29:00.300 --> 00:29:02.660 align:start position:0%
simply calling the transfer method on an
address<00:29:00.690><c> and</c><00:29:01.070><c> apparently</c><00:29:02.070><c> in</c><00:29:02.220><c> future</c><00:29:02.550><c> there</c>

00:29:02.660 --> 00:29:02.670 align:start position:0%
address and apparently in future there
 

00:29:02.670 --> 00:29:04.820 align:start position:0%
address and apparently in future there
will<00:29:02.760><c> be</c><00:29:02.790><c> an</c><00:29:02.970><c> address</c><00:29:03.150><c> subtype</c><00:29:03.750><c> and</c><00:29:04.080><c> only</c><00:29:04.650><c> that</c>

00:29:04.820 --> 00:29:04.830 align:start position:0%
will be an address subtype and only that
 

00:29:04.830 --> 00:29:14.530 align:start position:0%
will be an address subtype and only that
will<00:29:05.040><c> have</c><00:29:05.250><c> the</c><00:29:05.910><c> transfer</c><00:29:06.330><c> function</c><00:29:06.780><c> too</c>

00:29:14.530 --> 00:29:14.540 align:start position:0%
 
 

00:29:14.540 --> 00:29:21.710 align:start position:0%
 
right<00:29:19.010><c> right</c><00:29:20.010><c> so</c><00:29:20.250><c> this</c><00:29:20.730><c> is</c><00:29:20.790><c> know</c><00:29:21.450><c> with</c><00:29:21.600><c> the</c>

00:29:21.710 --> 00:29:21.720 align:start position:0%
right right so this is know with the
 

00:29:21.720 --> 00:29:23.630 align:start position:0%
right right so this is know with the
right<00:29:21.930><c> terminology</c><00:29:22.350><c> maybe</c><00:29:22.950><c> it's</c><00:29:23.160><c> a</c><00:29:23.220><c> key</c><00:29:23.460><c> word</c>

00:29:23.630 --> 00:29:23.640 align:start position:0%
right terminology maybe it's a key word
 

00:29:23.640 --> 00:29:28.040 align:start position:0%
right terminology maybe it's a key word
but<00:29:24.210><c> it's</c><00:29:24.390><c> like</c><00:29:24.690><c> oddly</c><00:29:25.580><c> so</c><00:29:26.580><c> in</c><00:29:26.820><c> this</c><00:29:27.150><c> case</c><00:29:27.450><c> it's</c>

00:29:28.040 --> 00:29:28.050 align:start position:0%
but it's like oddly so in this case it's
 

00:29:28.050 --> 00:29:31.010 align:start position:0%
but it's like oddly so in this case it's
the<00:29:28.320><c> key</c><00:29:28.500><c> it's</c><00:29:28.710><c> a</c><00:29:28.800><c> synthetic</c><00:29:29.550><c> thing</c><00:29:30.360><c> which</c><00:29:30.720><c> has</c>

00:29:31.010 --> 00:29:31.020 align:start position:0%
the key it's a synthetic thing which has
 

00:29:31.020 --> 00:29:33.260 align:start position:0%
the key it's a synthetic thing which has
been<00:29:31.260><c> added</c><00:29:31.530><c> the</c><00:29:31.920><c> syntactic</c><00:29:32.550><c> sugar</c><00:29:32.580><c> on</c><00:29:33.150><c> the</c>

00:29:33.260 --> 00:29:33.270 align:start position:0%
been added the syntactic sugar on the
 

00:29:33.270 --> 00:29:36.170 align:start position:0%
been added the syntactic sugar on the
address<00:29:33.630><c> type</c><00:29:33.810><c> and</c><00:29:34.050><c> this</c><00:29:34.650><c> type</c><00:29:35.370><c> it's</c><00:29:35.610><c> a</c><00:29:35.700><c> method</c>

00:29:36.170 --> 00:29:36.180 align:start position:0%
address type and this type it's a method
 

00:29:36.180 --> 00:29:38.510 align:start position:0%
address type and this type it's a method
with<00:29:37.050><c> an</c><00:29:37.200><c> actual</c><00:29:37.530><c> concrete</c><00:29:37.770><c> method</c><00:29:38.310><c> called</c>

00:29:38.510 --> 00:29:38.520 align:start position:0%
with an actual concrete method called
 

00:29:38.520 --> 00:29:44.330 align:start position:0%
with an actual concrete method called
transfer<00:29:38.970><c> on</c><00:29:39.240><c> an</c><00:29:40.050><c> external</c><00:29:40.920><c> account</c><00:29:41.730><c> and</c><00:29:43.340><c> for</c>

00:29:44.330 --> 00:29:44.340 align:start position:0%
transfer on an external account and for
 

00:29:44.340 --> 00:29:45.980 align:start position:0%
transfer on an external account and for
security<00:29:44.520><c> there</c><00:29:45.300><c> are</c><00:29:45.390><c> very</c><00:29:45.690><c> different</c>

00:29:45.980 --> 00:29:45.990 align:start position:0%
security there are very different
 

00:29:45.990 --> 00:29:52.970 align:start position:0%
security there are very different
semantics<00:29:46.950><c> and</c><00:29:47.130><c> they</c><00:29:47.490><c> matter</c><00:29:47.700><c> a</c><00:29:47.850><c> lot</c><00:29:48.120><c> yeah</c><00:29:51.980><c> so</c>

00:29:52.970 --> 00:29:52.980 align:start position:0%
semantics and they matter a lot yeah so
 

00:29:52.980 --> 00:29:54.590 align:start position:0%
semantics and they matter a lot yeah so
I've<00:29:53.070><c> had</c><00:29:53.550><c> a</c><00:29:53.580><c> couple</c><00:29:53.730><c> of</c><00:29:53.910><c> people</c><00:29:54.210><c> sent</c><00:29:54.510><c> me</c>

00:29:54.590 --> 00:29:54.600 align:start position:0%
I've had a couple of people sent me
 

00:29:54.600 --> 00:29:57.110 align:start position:0%
I've had a couple of people sent me
things<00:29:55.560><c> and</c><00:29:55.770><c> tweet</c><00:29:56.040><c> diems</c><00:29:56.370><c> I</c><00:29:56.670><c> only</c><00:29:56.820><c> have</c><00:29:57.000><c> my</c>

00:29:57.110 --> 00:29:57.120 align:start position:0%
things and tweet diems I only have my
 

00:29:57.120 --> 00:29:59.030 align:start position:0%
things and tweet diems I only have my
phone<00:29:57.360><c> here</c><00:29:57.600><c> so</c><00:29:57.690><c> please</c><00:29:58.140><c> send</c><00:29:58.350><c> them</c><00:29:58.500><c> to</c><00:29:58.650><c> other</c>

00:29:59.030 --> 00:29:59.040 align:start position:0%
phone here so please send them to other
 

00:29:59.040 --> 00:30:01.760 align:start position:0%
phone here so please send them to other
people<00:29:59.400><c> as</c><00:29:59.490><c> well</c><00:29:59.700><c> yeah</c><00:30:00.480><c> while</c><00:30:00.930><c> I</c><00:30:00.960><c> well</c><00:30:01.500><c> I</c><00:30:01.530><c> set</c>

00:30:01.760 --> 00:30:01.770 align:start position:0%
people as well yeah while I well I set
 

00:30:01.770 --> 00:30:03.230 align:start position:0%
people as well yeah while I well I set
this<00:30:01.890><c> up</c><00:30:02.040><c> you</c><00:30:02.310><c> just</c><00:30:02.520><c> describe</c><00:30:02.940><c> what</c><00:30:02.970><c> the</c>

00:30:03.230 --> 00:30:03.240 align:start position:0%
this up you just describe what the
 

00:30:03.240 --> 00:30:04.910 align:start position:0%
this up you just describe what the
contract<00:30:03.600><c> does</c><00:30:03.720><c> if</c><00:30:03.900><c> you</c><00:30:04.080><c> could</c><00:30:04.260><c> yeah</c><00:30:04.650><c> so</c>

00:30:04.910 --> 00:30:04.920 align:start position:0%
contract does if you could yeah so
 

00:30:04.920 --> 00:30:06.980 align:start position:0%
contract does if you could yeah so
everybody<00:30:05.460><c> my</c><00:30:05.610><c> name</c><00:30:05.730><c> is</c><00:30:05.820><c> Brennan</c><00:30:06.090><c> we've</c>

00:30:06.980 --> 00:30:06.990 align:start position:0%
everybody my name is Brennan we've
 

00:30:06.990 --> 00:30:13.160 align:start position:0%
everybody my name is Brennan we've
created<00:30:07.320><c> a</c><00:30:07.650><c> work</c><00:30:11.510><c> we've</c><00:30:12.510><c> created</c><00:30:12.750><c> a</c><00:30:12.960><c> work</c>

00:30:13.160 --> 00:30:13.170 align:start position:0%
created a work we've created a work
 

00:30:13.170 --> 00:30:15.620 align:start position:0%
created a work we've created a work
contract<00:30:13.620><c> so</c><00:30:14.130><c> that</c><00:30:14.280><c> you</c><00:30:14.430><c> can</c><00:30:14.640><c> deposit</c><00:30:15.060><c> tokens</c>

00:30:15.620 --> 00:30:15.630 align:start position:0%
contract so that you can deposit tokens
 

00:30:15.630 --> 00:30:18.020 align:start position:0%
contract so that you can deposit tokens
in<00:30:15.810><c> it</c><00:30:15.930><c> and</c><00:30:16.140><c> then</c><00:30:16.590><c> be</c><00:30:17.160><c> eligible</c><00:30:17.430><c> to</c><00:30:17.940><c> be</c>

00:30:18.020 --> 00:30:18.030 align:start position:0%
in it and then be eligible to be
 

00:30:18.030 --> 00:30:20.840 align:start position:0%
in it and then be eligible to be
selected<00:30:18.480><c> to</c><00:30:18.720><c> complete</c><00:30:19.320><c> work</c><00:30:19.500><c> so</c><00:30:20.250><c> you</c><00:30:20.640><c> say</c>

00:30:20.840 --> 00:30:20.850 align:start position:0%
selected to complete work so you say
 

00:30:20.850 --> 00:30:22.820 align:start position:0%
selected to complete work so you say
deposit<00:30:21.270><c> a</c><00:30:21.330><c> thousand</c><00:30:21.720><c> tokens</c><00:30:22.140><c> and</c><00:30:22.530><c> then</c><00:30:22.650><c> now</c>

00:30:22.820 --> 00:30:22.830 align:start position:0%
deposit a thousand tokens and then now
 

00:30:22.830 --> 00:30:26.230 align:start position:0%
deposit a thousand tokens and then now
you<00:30:22.890><c> can</c><00:30:23.430><c> start</c><00:30:24.420><c> working</c><00:30:24.660><c> in</c><00:30:25.020><c> some</c><00:30:25.230><c> capacity</c>

00:30:26.230 --> 00:30:26.240 align:start position:0%
you can start working in some capacity
 

00:30:26.240 --> 00:30:29.450 align:start position:0%
you can start working in some capacity
so<00:30:27.350><c> it's</c><00:30:28.350><c> still</c><00:30:28.590><c> a</c><00:30:28.620><c> work</c><00:30:28.680><c> in</c><00:30:28.890><c> progress</c><00:30:29.130><c> so</c><00:30:29.430><c> I</c>

00:30:29.450 --> 00:30:29.460 align:start position:0%
so it's still a work in progress so I
 

00:30:29.460 --> 00:30:31.790 align:start position:0%
so it's still a work in progress so I
think<00:30:29.520><c> it's</c><00:30:29.700><c> gonna</c><00:30:29.790><c> get</c><00:30:29.940><c> shredded</c><00:30:30.590><c> but</c><00:30:31.590><c> the</c>

00:30:31.790 --> 00:30:31.800 align:start position:0%
think it's gonna get shredded but the
 

00:30:31.800 --> 00:30:33.560 align:start position:0%
think it's gonna get shredded but the
idea<00:30:32.070><c> is</c><00:30:32.160><c> that</c><00:30:32.190><c> you</c><00:30:32.670><c> you</c><00:30:32.940><c> to</c><00:30:33.090><c> positive</c><00:30:33.480><c> so</c>

00:30:33.560 --> 00:30:33.570 align:start position:0%
idea is that you you to positive so
 

00:30:33.570 --> 00:30:35.540 align:start position:0%
idea is that you you to positive so
amount<00:30:33.780><c> of</c><00:30:33.870><c> tokens</c><00:30:34.260><c> and</c><00:30:34.470><c> then</c><00:30:34.890><c> the</c><00:30:35.160><c> work</c>

00:30:35.540 --> 00:30:35.550 align:start position:0%
amount of tokens and then the work
 

00:30:35.550 --> 00:30:38.960 align:start position:0%
amount of tokens and then the work
manager<00:30:36.120><c> is</c><00:30:36.300><c> able</c><00:30:36.840><c> to</c><00:30:36.960><c> withdraw</c><00:30:37.880><c> from</c><00:30:38.880><c> that</c>

00:30:38.960 --> 00:30:38.970 align:start position:0%
manager is able to withdraw from that
 

00:30:38.970 --> 00:30:42.520 align:start position:0%
manager is able to withdraw from that
deposit<00:30:39.690><c> for</c><00:30:39.870><c> jobs</c><00:30:40.110><c> and</c><00:30:40.440><c> as</c><00:30:41.160><c> soon</c><00:30:41.340><c> as</c><00:30:41.460><c> that</c>

00:30:42.520 --> 00:30:42.530 align:start position:0%
deposit for jobs and as soon as that
 

00:30:42.530 --> 00:30:46.870 align:start position:0%
deposit for jobs and as soon as that
deposit<00:30:43.530><c> drops</c><00:30:43.830><c> below</c><00:30:44.100><c> the</c><00:30:45.050><c> size</c><00:30:46.050><c> of</c><00:30:46.410><c> the</c><00:30:46.530><c> jobs</c>

00:30:46.870 --> 00:30:46.880 align:start position:0%
deposit drops below the size of the jobs
 

00:30:46.880 --> 00:30:49.580 align:start position:0%
deposit drops below the size of the jobs
requirement<00:30:47.880><c> like</c><00:30:48.060><c> the</c><00:30:48.210><c> stake</c><00:30:48.480><c> then</c><00:30:49.110><c> you'll</c>

00:30:49.580 --> 00:30:49.590 align:start position:0%
requirement like the stake then you'll
 

00:30:49.590 --> 00:30:52.790 align:start position:0%
requirement like the stake then you'll
become<00:30:49.770><c> suspended</c><00:30:50.370><c> and</c><00:30:50.700><c> so</c><00:30:51.540><c> you</c><00:30:52.500><c> have</c><00:30:52.620><c> that</c>

00:30:52.790 --> 00:30:52.800 align:start position:0%
become suspended and so you have that
 

00:30:52.800 --> 00:30:54.230 align:start position:0%
become suspended and so you have that
forces<00:30:53.130><c> you</c><00:30:53.250><c> deposit</c><00:30:53.700><c> back</c><00:30:53.880><c> into</c><00:30:54.150><c> the</c>

00:30:54.230 --> 00:30:54.240 align:start position:0%
forces you deposit back into the
 

00:30:54.240 --> 00:30:56.720 align:start position:0%
forces you deposit back into the
contract<00:30:54.750><c> to</c><00:30:55.320><c> refill</c><00:30:55.710><c> your</c><00:30:55.890><c> your</c><00:30:56.190><c> work</c><00:30:56.340><c> tokens</c>

00:30:56.720 --> 00:30:56.730 align:start position:0%
contract to refill your your work tokens
 

00:30:56.730 --> 00:30:58.550 align:start position:0%
contract to refill your your work tokens
so<00:30:57.120><c> if</c><00:30:57.240><c> you</c><00:30:57.330><c> can</c><00:30:57.480><c> imagine</c><00:30:57.630><c> it's</c><00:30:58.080><c> like</c><00:30:58.260><c> the</c><00:30:58.410><c> work</c>

00:30:58.550 --> 00:30:58.560 align:start position:0%
so if you can imagine it's like the work
 

00:30:58.560 --> 00:31:00.860 align:start position:0%
so if you can imagine it's like the work
deposit<00:30:59.070><c> is</c><00:30:59.190><c> sort</c><00:30:59.700><c> of</c><00:30:59.760><c> that</c><00:31:00.150><c> is</c><00:31:00.360><c> the</c><00:31:00.540><c> number</c><00:31:00.750><c> of</c>

00:31:00.860 --> 00:31:00.870 align:start position:0%
deposit is sort of that is the number of
 

00:31:00.870 --> 00:31:01.640 align:start position:0%
deposit is sort of that is the number of
jobs<00:31:01.110><c> you</c><00:31:01.260><c> can</c><00:31:01.380><c> have</c>

00:31:01.640 --> 00:31:01.650 align:start position:0%
jobs you can have
 

00:31:01.650 --> 00:31:05.870 align:start position:0%
jobs you can have
on<00:31:01.740><c> the</c><00:31:01.890><c> fly</c><00:31:02.160><c> if</c><00:31:02.610><c> you</c><00:31:02.790><c> will</c><00:31:03.830><c> so</c><00:31:04.830><c> so</c><00:31:05.610><c> there's</c><00:31:05.790><c> a</c>

00:31:05.870 --> 00:31:05.880 align:start position:0%
on the fly if you will so so there's a
 

00:31:05.880 --> 00:31:07.460 align:start position:0%
on the fly if you will so so there's a
few<00:31:06.030><c> things</c><00:31:06.090><c> that</c><00:31:06.600><c> we</c><00:31:06.690><c> haven't</c><00:31:06.900><c> implemented</c>

00:31:07.460 --> 00:31:07.470 align:start position:0%
few things that we haven't implemented
 

00:31:07.470 --> 00:31:10.220 align:start position:0%
few things that we haven't implemented
like<00:31:07.800><c> being</c><00:31:08.340><c> able</c><00:31:08.430><c> to</c><00:31:08.520><c> withdraw</c><00:31:08.880><c> but</c><00:31:09.090><c> or</c><00:31:10.020><c> sorry</c>

00:31:10.220 --> 00:31:10.230 align:start position:0%
like being able to withdraw but or sorry
 

00:31:10.230 --> 00:31:11.630 align:start position:0%
like being able to withdraw but or sorry
I<00:31:10.260><c> have</c><00:31:10.380><c> a</c><00:31:10.410><c> having</c><00:31:10.800><c> a</c><00:31:10.890><c> restriction</c><00:31:11.460><c> on</c><00:31:11.580><c> the</c>

00:31:11.630 --> 00:31:11.640 align:start position:0%
I have a having a restriction on the
 

00:31:11.640 --> 00:31:13.220 align:start position:0%
I have a having a restriction on the
timer<00:31:11.910><c> but</c><00:31:12.300><c> I'm</c><00:31:12.720><c> not</c><00:31:12.900><c> sure</c><00:31:13.050><c> if</c><00:31:13.110><c> it's</c>

00:31:13.220 --> 00:31:13.230 align:start position:0%
timer but I'm not sure if it's
 

00:31:13.230 --> 00:31:14.840 align:start position:0%
timer but I'm not sure if it's
absolutely<00:31:13.350><c> necessary</c><00:31:13.590><c> so</c><00:31:14.160><c> I</c><00:31:14.460><c> guess</c><00:31:14.730><c> I'll</c>

00:31:14.840 --> 00:31:14.850 align:start position:0%
absolutely necessary so I guess I'll
 

00:31:14.850 --> 00:31:16.850 align:start position:0%
absolutely necessary so I guess I'll
hand<00:31:15.030><c> it</c><00:31:15.120><c> off</c><00:31:15.210><c> to</c><00:31:15.240><c> you</c><00:31:15.390><c> guys</c><00:31:15.540><c> to</c><00:31:15.840><c> have</c><00:31:16.590><c> a</c><00:31:16.650><c> look</c>

00:31:16.850 --> 00:31:16.860 align:start position:0%
hand it off to you guys to have a look
 

00:31:16.860 --> 00:31:20.540 align:start position:0%
hand it off to you guys to have a look
so<00:31:18.080><c> so</c><00:31:19.080><c> that</c><00:31:19.260><c> is</c><00:31:19.410><c> there</c><00:31:19.650><c> is</c><00:31:19.800><c> there</c><00:31:19.950><c> Nate</c><00:31:20.280><c> in</c>

00:31:20.540 --> 00:31:20.550 align:start position:0%
so so that is there is there Nate in
 

00:31:20.550 --> 00:31:23.210 align:start position:0%
so so that is there is there Nate in
Utah<00:31:20.880><c> margin</c><00:31:21.180><c> or</c><00:31:21.330><c> are</c><00:31:21.570><c> there</c><00:31:21.810><c> like</c><00:31:21.990><c> it's</c><00:31:22.890><c> I've</c>

00:31:23.210 --> 00:31:23.220 align:start position:0%
Utah margin or are there like it's I've
 

00:31:23.220 --> 00:31:25.370 align:start position:0%
Utah margin or are there like it's I've
actually<00:31:23.430><c> left</c><00:31:23.760><c> that</c><00:31:24.000><c> out</c><00:31:24.180><c> it's</c><00:31:24.390><c> just</c><00:31:24.480><c> er</c><00:31:24.810><c> c20</c>

00:31:25.370 --> 00:31:25.380 align:start position:0%
actually left that out it's just er c20
 

00:31:25.380 --> 00:31:28.940 align:start position:0%
actually left that out it's just er c20
so<00:31:26.280><c> you</c><00:31:26.340><c> can</c><00:31:26.520><c> just</c><00:31:26.700><c> you</c><00:31:27.030><c> know</c><00:31:27.060><c> in</c><00:31:27.810><c> say</c><00:31:27.960><c> okay</c><00:31:28.860><c> so</c>

00:31:28.940 --> 00:31:28.950 align:start position:0%
so you can just you know in say okay so
 

00:31:28.950 --> 00:31:31.960 align:start position:0%
so you can just you know in say okay so
will<00:31:29.280><c> will</c><00:31:29.610><c> this</c><00:31:29.670><c> thing</c><00:31:29.970><c> be</c><00:31:30.810><c> dealing</c><00:31:31.320><c> with</c>

00:31:31.960 --> 00:31:31.970 align:start position:0%
will will this thing be dealing with
 

00:31:31.970 --> 00:31:35.350 align:start position:0%
will will this thing be dealing with
assets<00:31:32.970><c> of</c><00:31:33.090><c> value</c><00:31:33.120><c> such</c><00:31:33.630><c> as</c><00:31:33.810><c> ether</c><00:31:34.320><c> or</c>

00:31:35.350 --> 00:31:35.360 align:start position:0%
assets of value such as ether or
 

00:31:35.360 --> 00:31:38.180 align:start position:0%
assets of value such as ether or
whatever<00:31:36.360><c> valuable</c><00:31:36.960><c> token</c><00:31:37.350><c> just</c><00:31:37.710><c> a</c><00:31:37.800><c> custom</c>

00:31:38.180 --> 00:31:38.190 align:start position:0%
whatever valuable token just a custom
 

00:31:38.190 --> 00:31:39.800 align:start position:0%
whatever valuable token just a custom
work<00:31:38.340><c> token</c><00:31:38.760><c> that's</c><00:31:38.970><c> the</c><00:31:39.120><c> custom</c><00:31:39.270><c> work</c><00:31:39.480><c> token</c>

00:31:39.800 --> 00:31:39.810 align:start position:0%
work token that's the custom work token
 

00:31:39.810 --> 00:31:42.680 align:start position:0%
work token that's the custom work token
yeah<00:31:40.080><c> so</c><00:31:40.500><c> at</c><00:31:40.830><c> this</c><00:31:41.190><c> point</c><00:31:41.520><c> is</c><00:31:41.880><c> there</c><00:31:42.360><c> anything</c>

00:31:42.680 --> 00:31:42.690 align:start position:0%
yeah so at this point is there anything
 

00:31:42.690 --> 00:31:44.810 align:start position:0%
yeah so at this point is there anything
you<00:31:43.680><c> know</c><00:31:43.800><c> what</c><00:31:43.950><c> what</c><00:31:44.160><c> are</c><00:31:44.190><c> the</c><00:31:44.280><c> asks</c><00:31:44.640><c> are</c>

00:31:44.810 --> 00:31:44.820 align:start position:0%
you know what what are the asks are
 

00:31:44.820 --> 00:31:49.220 align:start position:0%
you know what what are the asks are
there<00:31:44.850><c> any</c><00:31:45.000><c> assets</c><00:31:45.570><c> that</c><00:31:46.020><c> are</c><00:31:46.230><c> have</c><00:31:46.670><c> value</c>

00:31:49.220 --> 00:31:49.230 align:start position:0%
there any assets that are have value
 

00:31:49.230 --> 00:31:52.370 align:start position:0%
there any assets that are have value
no<00:31:49.980><c> just</c><00:31:50.310><c> the</c><00:31:50.430><c> inherent</c><00:31:51.030><c> value</c><00:31:51.420><c> of</c><00:31:51.450><c> being</c><00:31:52.050><c> part</c>

00:31:52.370 --> 00:31:52.380 align:start position:0%
no just the inherent value of being part
 

00:31:52.380 --> 00:31:53.600 align:start position:0%
no just the inherent value of being part
of<00:31:52.500><c> the</c><00:31:52.620><c> work</c><00:31:52.740><c> contract</c><00:31:53.310><c> so</c><00:31:53.430><c> you</c><00:31:53.460><c> can</c>

00:31:53.600 --> 00:31:53.610 align:start position:0%
of the work contract so you can
 

00:31:53.610 --> 00:31:56.300 align:start position:0%
of the work contract so you can
participate<00:31:53.760><c> in</c><00:31:54.270><c> the</c><00:31:54.480><c> jobs</c><00:31:54.750><c> so</c><00:31:55.680><c> that</c><00:31:56.070><c> the</c>

00:31:56.300 --> 00:31:56.310 align:start position:0%
participate in the jobs so that the
 

00:31:56.310 --> 00:31:57.860 align:start position:0%
participate in the jobs so that the
value<00:31:56.610><c> exchange</c><00:31:57.000><c> is</c><00:31:57.150><c> outside</c><00:31:57.510><c> of</c><00:31:57.540><c> that</c><00:31:57.750><c> you</c>

00:31:57.860 --> 00:31:57.870 align:start position:0%
value exchange is outside of that you
 

00:31:57.870 --> 00:31:59.810 align:start position:0%
value exchange is outside of that you
become<00:31:58.110><c> eligible</c><00:31:58.350><c> to</c><00:31:59.220><c> take</c><00:31:59.370><c> part</c><00:31:59.430><c> in</c><00:31:59.670><c> that</c>

00:31:59.810 --> 00:31:59.820 align:start position:0%
become eligible to take part in that
 

00:31:59.820 --> 00:32:01.880 align:start position:0%
become eligible to take part in that
value<00:32:00.000><c> network</c><00:32:00.390><c> by</c><00:32:00.540><c> staking</c><00:32:00.930><c> tokens</c><00:32:01.770><c> in</c><00:32:01.860><c> the</c>

00:32:01.880 --> 00:32:01.890 align:start position:0%
value network by staking tokens in the
 

00:32:01.890 --> 00:32:05.690 align:start position:0%
value network by staking tokens in the
work<00:32:02.040><c> contract</c><00:32:02.720><c> so</c><00:32:03.720><c> alright</c><00:32:04.170><c> yeah</c><00:32:04.590><c> and</c><00:32:05.340><c> who</c>

00:32:05.690 --> 00:32:05.700 align:start position:0%
work contract so alright yeah and who
 

00:32:05.700 --> 00:32:08.870 align:start position:0%
work contract so alright yeah and who
are<00:32:05.820><c> the</c><00:32:06.000><c> difference</c><00:32:06.560><c> actors</c><00:32:07.560><c> in</c><00:32:08.040><c> this</c><00:32:08.400><c> model</c>

00:32:08.870 --> 00:32:08.880 align:start position:0%
are the difference actors in this model
 

00:32:08.880 --> 00:32:11.960 align:start position:0%
are the difference actors in this model
so<00:32:09.060><c> you</c><00:32:09.120><c> have</c><00:32:09.360><c> someone</c><00:32:10.080><c> who</c><00:32:10.230><c> does</c><00:32:10.410><c> work</c><00:32:10.620><c> yes</c><00:32:11.400><c> so</c>

00:32:11.960 --> 00:32:11.970 align:start position:0%
so you have someone who does work yes so
 

00:32:11.970 --> 00:32:13.700 align:start position:0%
so you have someone who does work yes so
you've<00:32:12.060><c> got</c><00:32:12.180><c> the</c><00:32:12.330><c> worker</c><00:32:12.540><c> who</c><00:32:13.050><c> stakes</c><00:32:13.560><c> the</c>

00:32:13.700 --> 00:32:13.710 align:start position:0%
you've got the worker who stakes the
 

00:32:13.710 --> 00:32:16.970 align:start position:0%
you've got the worker who stakes the
initial<00:32:13.980><c> deposit</c><00:32:14.190><c> you</c><00:32:15.150><c> have</c><00:32:15.360><c> the</c><00:32:15.600><c> job</c><00:32:16.440><c> manager</c>

00:32:16.970 --> 00:32:16.980 align:start position:0%
initial deposit you have the job manager
 

00:32:16.980 --> 00:32:19.390 align:start position:0%
initial deposit you have the job manager
who's<00:32:17.400><c> responsible</c><00:32:18.210><c> for</c><00:32:18.480><c> pulling</c><00:32:18.810><c> out</c><00:32:19.050><c> the</c>

00:32:19.390 --> 00:32:19.400 align:start position:0%
who's responsible for pulling out the
 

00:32:19.400 --> 00:32:22.250 align:start position:0%
who's responsible for pulling out the
the<00:32:20.400><c> job</c><00:32:21.060><c> deposit</c><00:32:21.630><c> if</c><00:32:21.750><c> you</c><00:32:21.900><c> will</c><00:32:22.050><c> which</c><00:32:22.230><c> is</c>

00:32:22.250 --> 00:32:22.260 align:start position:0%
the job deposit if you will which is
 

00:32:22.260 --> 00:32:23.390 align:start position:0%
the job deposit if you will which is
gonna<00:32:22.470><c> be</c><00:32:22.560><c> smaller</c><00:32:22.830><c> than</c><00:32:23.130><c> the</c><00:32:23.250><c> initial</c>

00:32:23.390 --> 00:32:23.400 align:start position:0%
gonna be smaller than the initial
 

00:32:23.400 --> 00:32:25.220 align:start position:0%
gonna be smaller than the initial
deposit<00:32:23.760><c> and</c><00:32:24.210><c> then</c><00:32:24.690><c> of</c><00:32:24.780><c> course</c><00:32:24.810><c> you</c><00:32:25.050><c> have</c><00:32:25.170><c> the</c>

00:32:25.220 --> 00:32:25.230 align:start position:0%
deposit and then of course you have the
 

00:32:25.230 --> 00:32:28.310 align:start position:0%
deposit and then of course you have the
owner<00:32:25.380><c> of</c><00:32:25.560><c> the</c><00:32:25.650><c> contract</c><00:32:26.160><c> you</c><00:32:26.550><c> can</c><00:32:26.700><c> deploy</c><00:32:27.320><c> and</c>

00:32:28.310 --> 00:32:28.320 align:start position:0%
owner of the contract you can deploy and
 

00:32:28.320 --> 00:32:32.480 align:start position:0%
owner of the contract you can deploy and
the<00:32:28.950><c> owner</c><00:32:29.190><c> of</c><00:32:29.550><c> the</c><00:32:29.640><c> contract</c><00:32:30.180><c> is</c><00:32:30.360><c> this</c><00:32:31.160><c> any</c><00:32:32.160><c> do</c>

00:32:32.480 --> 00:32:32.490 align:start position:0%
the owner of the contract is this any do
 

00:32:32.490 --> 00:32:35.360 align:start position:0%
the owner of the contract is this any do
administers<00:32:33.620><c> administrative</c><00:32:34.620><c> stuff</c><00:32:35.040><c> on</c><00:32:35.280><c> the</c>

00:32:35.360 --> 00:32:35.370 align:start position:0%
administers administrative stuff on the
 

00:32:35.370 --> 00:32:40.250 align:start position:0%
administers administrative stuff on the
contract<00:32:35.700><c> mm-hmm</c><00:32:36.500><c> like</c><00:32:37.500><c> what</c><00:32:38.630><c> if</c><00:32:39.630><c> I</c><00:32:39.780><c> recall</c>

00:32:40.250 --> 00:32:40.260 align:start position:0%
contract mm-hmm like what if I recall
 

00:32:40.260 --> 00:32:41.930 align:start position:0%
contract mm-hmm like what if I recall
there's<00:32:40.680><c> a</c><00:32:40.770><c> couple</c><00:32:40.950><c> weeks</c><00:32:41.190><c> ago</c><00:32:41.310><c> I</c><00:32:41.640><c> believe</c>

00:32:41.930 --> 00:32:41.940 align:start position:0%
there's a couple weeks ago I believe
 

00:32:41.940 --> 00:32:44.930 align:start position:0%
there's a couple weeks ago I believe
it's<00:32:42.660><c> just</c><00:32:43.220><c> instantiating</c><00:32:44.220><c> it</c><00:32:44.460><c> and</c><00:32:44.700><c> then</c>

00:32:44.930 --> 00:32:44.940 align:start position:0%
it's just instantiating it and then
 

00:32:44.940 --> 00:32:47.120 align:start position:0%
it's just instantiating it and then
there<00:32:45.360><c> might</c><00:32:45.540><c> be</c><00:32:45.570><c> they</c><00:32:46.470><c> can</c><00:32:46.620><c> set</c><00:32:46.800><c> the</c><00:32:46.920><c> stake</c>

00:32:47.120 --> 00:32:47.130 align:start position:0%
there might be they can set the stake
 

00:32:47.130 --> 00:32:49.400 align:start position:0%
there might be they can set the stake
limit<00:32:47.460><c> for</c><00:32:47.640><c> example</c><00:32:48.030><c> right</c><00:32:48.840><c> right</c><00:32:49.110><c> yeah</c>

00:32:49.400 --> 00:32:49.410 align:start position:0%
limit for example right right yeah
 

00:32:49.410 --> 00:32:51.890 align:start position:0%
limit for example right right yeah
there's<00:32:49.710><c> a</c><00:32:49.770><c> few</c><00:32:49.980><c> public</c><00:32:50.370><c> variables</c><00:32:50.760><c> that</c><00:32:51.720><c> you</c>

00:32:51.890 --> 00:32:51.900 align:start position:0%
there's a few public variables that you
 

00:32:51.900 --> 00:32:53.900 align:start position:0%
there's a few public variables that you
can<00:32:51.930><c> that</c><00:32:52.410><c> you</c><00:32:52.440><c> can</c><00:32:52.530><c> adjust</c><00:32:52.650><c> so</c><00:32:53.640><c> hopefully</c>

00:32:53.900 --> 00:32:53.910 align:start position:0%
can that you can adjust so hopefully
 

00:32:53.910 --> 00:32:56.650 align:start position:0%
can that you can adjust so hopefully
it's<00:32:54.030><c> small</c><00:32:54.270><c> enough</c><00:32:54.300><c> for</c><00:32:54.480><c> you</c><00:32:54.600><c> guys</c><00:32:54.750><c> to</c><00:32:54.900><c> croc</c>

00:32:56.650 --> 00:32:56.660 align:start position:0%
it's small enough for you guys to croc
 

00:32:56.660 --> 00:33:01.510 align:start position:0%
it's small enough for you guys to croc
okay

00:33:01.510 --> 00:33:01.520 align:start position:0%
 
 

00:33:01.520 --> 00:33:06.380 align:start position:0%
 
so<00:33:02.520><c> let's</c><00:33:03.090><c> see</c><00:33:03.360><c> um</c><00:33:03.770><c> where</c><00:33:04.770><c> would</c><00:33:04.920><c> a</c><00:33:04.950><c> user</c><00:33:05.390><c> what</c>

00:33:06.380 --> 00:33:06.390 align:start position:0%
so let's see um where would a user what
 

00:33:06.390 --> 00:33:08.120 align:start position:0%
so let's see um where would a user what
would<00:33:06.510><c> be</c><00:33:06.660><c> the</c><00:33:06.810><c> first</c><00:33:07.080><c> action</c><00:33:07.380><c> our</c><00:33:07.650><c> user</c><00:33:07.800><c> does</c>

00:33:08.120 --> 00:33:08.130 align:start position:0%
would be the first action our user does
 

00:33:08.130 --> 00:33:11.890 align:start position:0%
would be the first action our user does
let's<00:33:08.730><c> deposit</c><00:33:09.720><c> stake</c><00:33:09.990><c> okay</c><00:33:10.590><c> so</c><00:33:10.650><c> let's</c><00:33:10.920><c> go</c>

00:33:11.890 --> 00:33:11.900 align:start position:0%
let's deposit stake okay so let's go
 

00:33:11.900 --> 00:33:14.600 align:start position:0%
let's deposit stake okay so let's go
it's<00:33:12.900><c> quite</c><00:33:13.110><c> hard</c><00:33:13.290><c> for</c><00:33:13.320><c> a</c><00:33:13.410><c> lot</c><00:33:13.500><c> I</c><00:33:13.560><c> have</c><00:33:13.710><c> to</c><00:33:13.890><c> look</c>

00:33:14.600 --> 00:33:14.610 align:start position:0%
it's quite hard for a lot I have to look
 

00:33:14.610 --> 00:33:15.930 align:start position:0%
it's quite hard for a lot I have to look
at<00:33:14.760><c> through</c><00:33:14.880><c> different</c><00:33:15.150><c> things</c>

00:33:15.930 --> 00:33:15.940 align:start position:0%
at through different things
 

00:33:15.940 --> 00:33:18.030 align:start position:0%
at through different things
so<00:33:16.510><c> the</c><00:33:16.630><c> owner</c><00:33:16.840><c> is</c><00:33:16.930><c> just</c><00:33:17.080><c> like</c><00:33:17.170><c> an</c><00:33:17.320><c> admin</c><00:33:17.830><c> that</c>

00:33:18.030 --> 00:33:18.040 align:start position:0%
so the owner is just like an admin that
 

00:33:18.040 --> 00:33:20.730 align:start position:0%
so the owner is just like an admin that
manages<00:33:18.460><c> this</c><00:33:19.530><c> okay</c>

00:33:20.730 --> 00:33:20.740 align:start position:0%
manages this okay
 

00:33:20.740 --> 00:33:29.670 align:start position:0%
manages this okay
so<00:33:27.570><c> okay</c><00:33:28.570><c> so</c><00:33:28.600><c> the</c><00:33:28.750><c> owner</c><00:33:29.020><c> deposits</c><00:33:29.500><c> their</c>

00:33:29.670 --> 00:33:29.680 align:start position:0%
so okay so the owner deposits their
 

00:33:29.680 --> 00:33:34.890 align:start position:0%
so okay so the owner deposits their
stake<00:33:30.480><c> and</c><00:33:32.130><c> it</c><00:33:33.130><c> seems</c><00:33:33.520><c> like</c><00:33:33.700><c> they</c><00:33:33.850><c> get</c><00:33:34.030><c> tokens</c>

00:33:34.890 --> 00:33:34.900 align:start position:0%
stake and it seems like they get tokens
 

00:33:34.900 --> 00:33:36.300 align:start position:0%
stake and it seems like they get tokens
just<00:33:35.860><c> bought</c><00:33:36.010><c> it</c>

00:33:36.300 --> 00:33:36.310 align:start position:0%
just bought it
 

00:33:36.310 --> 00:33:38.250 align:start position:0%
just bought it
I<00:33:36.340><c> mean</c><00:33:36.580><c> sent</c><00:33:36.850><c> back</c><00:33:36.970><c> to</c><00:33:37.000><c> them</c><00:33:37.210><c> right</c><00:33:37.360><c> yeah</c><00:33:38.020><c> and</c>

00:33:38.250 --> 00:33:38.260 align:start position:0%
I mean sent back to them right yeah and
 

00:33:38.260 --> 00:33:41.610 align:start position:0%
I mean sent back to them right yeah and
just<00:33:38.380><c> to</c><00:33:38.440><c> add</c><00:33:38.530><c> add</c><00:33:38.980><c> to</c><00:33:39.250><c> this</c><00:33:39.370><c> so</c><00:33:40.240><c> the</c><00:33:40.620><c> the</c>

00:33:41.610 --> 00:33:41.620 align:start position:0%
just to add add to this so the the
 

00:33:41.620 --> 00:33:44.700 align:start position:0%
just to add add to this so the the
worker<00:33:41.830><c> has</c><00:33:42.160><c> to</c><00:33:42.190><c> approve</c><00:33:42.670><c> the</c><00:33:43.290><c> the</c><00:33:44.290><c> transfer</c>

00:33:44.700 --> 00:33:44.710 align:start position:0%
worker has to approve the the transfer
 

00:33:44.710 --> 00:33:49.590 align:start position:0%
worker has to approve the the transfer
before<00:33:44.890><c> this</c><00:33:45.310><c> deposit</c><00:33:45.700><c> stake</c><00:33:46.060><c> is</c><00:33:46.180><c> called</c><00:33:48.600><c> so</c>

00:33:49.590 --> 00:33:49.600 align:start position:0%
before this deposit stake is called so
 

00:33:49.600 --> 00:33:51.120 align:start position:0%
before this deposit stake is called so
one<00:33:49.750><c> thing</c><00:33:50.140><c> I</c><00:33:50.200><c> noticed</c><00:33:50.410><c> in</c><00:33:50.470><c> the</c><00:33:50.500><c> deposit</c><00:33:50.950><c> stake</c>

00:33:51.120 --> 00:33:51.130 align:start position:0%
one thing I noticed in the deposit stake
 

00:33:51.130 --> 00:33:52.770 align:start position:0%
one thing I noticed in the deposit stake
is<00:33:51.280><c> it</c><00:33:51.400><c> doesn't</c><00:33:51.550><c> seem</c><00:33:51.880><c> to</c><00:33:52.060><c> care</c><00:33:52.240><c> whether</c><00:33:52.510><c> it</c>

00:33:52.770 --> 00:33:52.780 align:start position:0%
is it doesn't seem to care whether it
 

00:33:52.780 --> 00:33:55.320 align:start position:0%
is it doesn't seem to care whether it
actually<00:33:52.960><c> succeeds</c><00:33:53.950><c> like</c><00:33:54.520><c> token</c><00:33:54.850><c> uh</c><00:33:54.940><c> transfer</c>

00:33:55.320 --> 00:33:55.330 align:start position:0%
actually succeeds like token uh transfer
 

00:33:55.330 --> 00:33:57.480 align:start position:0%
actually succeeds like token uh transfer
from<00:33:55.630><c> you</c><00:33:56.560><c> might</c><00:33:56.710><c> have</c><00:33:56.830><c> the</c><00:33:56.950><c> allowance</c><00:33:57.340><c> but</c>

00:33:57.480 --> 00:33:57.490 align:start position:0%
from you might have the allowance but
 

00:33:57.490 --> 00:33:58.470 align:start position:0%
from you might have the allowance but
you<00:33:57.550><c> can</c><00:33:57.670><c> yeah</c><00:33:57.760><c> there</c><00:33:58.180><c> could</c><00:33:58.210><c> be</c><00:33:58.300><c> other</c>

00:33:58.470 --> 00:33:58.480 align:start position:0%
you can yeah there could be other
 

00:33:58.480 --> 00:34:00.990 align:start position:0%
you can yeah there could be other
restrictions<00:33:59.260><c> like</c><00:33:59.620><c> can't</c><00:34:00.370><c> send</c><00:34:00.700><c> to</c><00:34:00.970><c> a</c>

00:34:00.990 --> 00:34:01.000 align:start position:0%
restrictions like can't send to a
 

00:34:01.000 --> 00:34:03.930 align:start position:0%
restrictions like can't send to a
contract<00:34:01.590><c> address</c><00:34:02.590><c> or</c><00:34:02.800><c> something</c><00:34:03.130><c> weird</c><00:34:03.520><c> like</c>

00:34:03.930 --> 00:34:03.940 align:start position:0%
contract address or something weird like
 

00:34:03.940 --> 00:34:06.120 align:start position:0%
contract address or something weird like
itself<00:34:04.330><c> or</c><00:34:04.540><c> you</c><00:34:05.110><c> might</c><00:34:05.350><c> just</c><00:34:05.620><c> not</c><00:34:05.770><c> have</c><00:34:05.950><c> enough</c>

00:34:06.120 --> 00:34:06.130 align:start position:0%
itself or you might just not have enough
 

00:34:06.130 --> 00:34:14.130 align:start position:0%
itself or you might just not have enough
tokens<00:34:07.350><c> great</c><00:34:10.169><c> this</c><00:34:11.169><c> ambiguity</c><00:34:11.800><c> right</c><00:34:13.140><c> where</c>

00:34:14.130 --> 00:34:14.140 align:start position:0%
tokens great this ambiguity right where
 

00:34:14.140 --> 00:34:17.610 align:start position:0%
tokens great this ambiguity right where
if<00:34:14.950><c> this</c><00:34:15.730><c> token</c><00:34:16.390><c> is</c><00:34:16.570><c> actually</c><00:34:17.320><c> an</c>

00:34:17.610 --> 00:34:17.620 align:start position:0%
if this token is actually an
 

00:34:17.620 --> 00:34:19.350 align:start position:0%
if this token is actually an
implementation<00:34:18.399><c> of</c><00:34:18.460><c> the</c><00:34:18.610><c> ERC</c><00:34:18.880><c> 20</c>

00:34:19.350 --> 00:34:19.360 align:start position:0%
implementation of the ERC 20
 

00:34:19.360 --> 00:34:22.260 align:start position:0%
implementation of the ERC 20
specification<00:34:20.020><c> which</c><00:34:20.370><c> conforms</c><00:34:21.370><c> exactly</c><00:34:22.090><c> to</c>

00:34:22.260 --> 00:34:22.270 align:start position:0%
specification which conforms exactly to
 

00:34:22.270 --> 00:34:24.630 align:start position:0%
specification which conforms exactly to
the<00:34:22.390><c> letter</c><00:34:22.600><c> of</c><00:34:22.780><c> specification</c><00:34:23.560><c> and</c><00:34:23.740><c> this</c>

00:34:24.630 --> 00:34:24.640 align:start position:0%
the letter of specification and this
 

00:34:24.640 --> 00:34:28.700 align:start position:0%
the letter of specification and this
transfer<00:34:25.120><c> from</c><00:34:25.300><c> fails</c><00:34:25.830><c> and</c><00:34:26.830><c> returns</c><00:34:27.250><c> a</c><00:34:27.399><c> false</c>

00:34:28.700 --> 00:34:28.710 align:start position:0%
transfer from fails and returns a false
 

00:34:28.710 --> 00:34:32.040 align:start position:0%
transfer from fails and returns a false
we<00:34:29.710><c> just</c><00:34:29.919><c> don't</c><00:34:30.220><c> care</c><00:34:30.370><c> about</c><00:34:30.490><c> that</c><00:34:30.820><c> yeah</c><00:34:31.149><c> so</c>

00:34:32.040 --> 00:34:32.050 align:start position:0%
we just don't care about that yeah so
 

00:34:32.050 --> 00:34:35.010 align:start position:0%
we just don't care about that yeah so
it's<00:34:32.290><c> a</c><00:34:32.380><c> it's</c><00:34:32.980><c> a</c><00:34:33.070><c> case</c><00:34:33.220><c> of</c><00:34:33.399><c> being</c><00:34:33.750><c> liberal</c><00:34:34.750><c> with</c>

00:34:35.010 --> 00:34:35.020 align:start position:0%
it's a it's a case of being liberal with
 

00:34:35.020 --> 00:34:37.260 align:start position:0%
it's a it's a case of being liberal with
what<00:34:35.169><c> you</c><00:34:35.260><c> accept</c><00:34:35.649><c> and</c><00:34:35.970><c> careful</c><00:34:36.970><c> thought</c><00:34:37.179><c> you</c>

00:34:37.260 --> 00:34:37.270 align:start position:0%
what you accept and careful thought you
 

00:34:37.270 --> 00:34:39.389 align:start position:0%
what you accept and careful thought you
omit<00:34:37.570><c> if</c><00:34:38.080><c> you</c><00:34:38.350><c> call</c><00:34:38.679><c> transfer</c><00:34:39.159><c> you</c><00:34:39.250><c> should</c>

00:34:39.389 --> 00:34:39.399 align:start position:0%
omit if you call transfer you should
 

00:34:39.399 --> 00:34:49.139 align:start position:0%
omit if you call transfer you should
always<00:34:39.520><c> write</c><00:34:39.880><c> that</c><00:34:39.909><c> in</c><00:34:40.149><c> a</c><00:34:40.210><c> require</c><00:34:46.919><c> yep</c><00:34:48.149><c> yeah</c>

00:34:49.139 --> 00:34:49.149 align:start position:0%
always write that in a require yep yeah
 

00:34:49.149 --> 00:34:50.639 align:start position:0%
always write that in a require yep yeah
the<00:34:49.330><c> the</c><00:34:49.360><c> check</c><00:34:49.840><c> for</c><00:34:50.020><c> the</c><00:34:50.110><c> allowance</c><00:34:50.290><c> isn't</c>

00:34:50.639 --> 00:34:50.649 align:start position:0%
the the check for the allowance isn't
 

00:34:50.649 --> 00:34:52.620 align:start position:0%
the the check for the allowance isn't
necessary<00:34:51.130><c> because</c><00:34:51.310><c> the</c><00:34:51.760><c> transfer</c><00:34:52.210><c> of</c><00:34:52.240><c> call</c>

00:34:52.620 --> 00:34:52.630 align:start position:0%
necessary because the transfer of call
 

00:34:52.630 --> 00:34:54.710 align:start position:0%
necessary because the transfer of call
will<00:34:52.840><c> fail</c><00:34:53.080><c> if</c><00:34:53.350><c> you</c><00:34:53.380><c> don't</c><00:34:53.500><c> have</c><00:34:53.800><c> an</c><00:34:53.890><c> allowance</c>

00:34:54.710 --> 00:34:54.720 align:start position:0%
will fail if you don't have an allowance
 

00:34:54.720 --> 00:34:57.030 align:start position:0%
will fail if you don't have an allowance
and<00:34:55.720><c> in</c><00:34:55.840><c> this</c><00:34:55.929><c> case</c><00:34:56.200><c> the</c><00:34:56.470><c> the</c><00:34:56.679><c> check</c><00:34:56.830><c> for</c><00:34:56.980><c> the</c>

00:34:57.030 --> 00:34:57.040 align:start position:0%
and in this case the the check for the
 

00:34:57.040 --> 00:34:58.290 align:start position:0%
and in this case the the check for the
allowance<00:34:57.370><c> is</c><00:34:57.430><c> actually</c><00:34:57.790><c> call</c><00:34:58.000><c> out</c><00:34:58.180><c> to</c>

00:34:58.290 --> 00:34:58.300 align:start position:0%
allowance is actually call out to
 

00:34:58.300 --> 00:34:59.760 align:start position:0%
allowance is actually call out to
another<00:34:58.420><c> contract</c><00:34:58.960><c> so</c><00:34:59.080><c> there's</c><00:34:59.260><c> a</c><00:34:59.290><c> minimum</c><00:34:59.620><c> of</c>

00:34:59.760 --> 00:34:59.770 align:start position:0%
another contract so there's a minimum of
 

00:34:59.770 --> 00:35:03.210 align:start position:0%
another contract so there's a minimum of
700<00:35:00.220><c> gas</c><00:35:00.430><c> plus</c><00:35:01.390><c> trance</c><00:35:02.230><c> state</c><00:35:02.710><c> reading</c><00:35:03.010><c> fees</c>

00:35:03.210 --> 00:35:03.220 align:start position:0%
700 gas plus trance state reading fees
 

00:35:03.220 --> 00:35:05.610 align:start position:0%
700 gas plus trance state reading fees
all<00:35:03.820><c> right</c><00:35:04.000><c> yep</c><00:35:04.510><c> so</c><00:35:05.050><c> yeah</c>

00:35:05.610 --> 00:35:05.620 align:start position:0%
all right yep so yeah
 

00:35:05.620 --> 00:35:08.040 align:start position:0%
all right yep so yeah
always<00:35:06.010><c> wrap</c><00:35:06.310><c> your</c><00:35:06.760><c> important</c><00:35:07.750><c> stuff</c><00:35:07.900><c> in</c>

00:35:08.040 --> 00:35:08.050 align:start position:0%
always wrap your important stuff in
 

00:35:08.050 --> 00:35:11.130 align:start position:0%
always wrap your important stuff in
requires<00:35:08.380><c> which</c><00:35:09.160><c> again</c><00:35:10.090><c> is</c><00:35:10.630><c> the</c><00:35:10.690><c> sort</c><00:35:11.110><c> of</c>

00:35:11.130 --> 00:35:11.140 align:start position:0%
requires which again is the sort of
 

00:35:11.140 --> 00:35:12.060 align:start position:0%
requires which again is the sort of
thing<00:35:11.290><c> you're</c><00:35:11.410><c> talking</c><00:35:11.500><c> about</c><00:35:11.800><c> because</c>

00:35:12.060 --> 00:35:12.070 align:start position:0%
thing you're talking about because
 

00:35:12.070 --> 00:35:14.280 align:start position:0%
thing you're talking about because
transfer<00:35:12.550><c> and</c><00:35:12.730><c> solidity</c><00:35:13.150><c> is</c><00:35:13.450><c> explicitly</c>

00:35:14.280 --> 00:35:14.290 align:start position:0%
transfer and solidity is explicitly
 

00:35:14.290 --> 00:35:18.920 align:start position:0%
transfer and solidity is explicitly
doesn't<00:35:14.740><c> require</c><00:35:15.010><c> you</c><00:35:15.550><c> wrap</c><00:35:15.760><c> it</c><00:35:15.910><c> and</c><00:35:16.030><c> require</c>

00:35:18.920 --> 00:35:18.930 align:start position:0%
 
 

00:35:18.930 --> 00:35:22.980 align:start position:0%
 
also<00:35:20.520><c> one</c><00:35:21.520><c> thing</c><00:35:21.760><c> here</c><00:35:22.210><c> so</c><00:35:22.450><c> going</c><00:35:22.690><c> through</c><00:35:22.810><c> the</c>

00:35:22.980 --> 00:35:22.990 align:start position:0%
also one thing here so going through the
 

00:35:22.990 --> 00:35:26.910 align:start position:0%
also one thing here so going through the
scenes<00:35:23.470><c> since</c><00:35:23.800><c> that</c><00:35:24.070><c> deposit</c><00:35:24.970><c> stake</c><00:35:25.920><c> cause</c>

00:35:26.910 --> 00:35:26.920 align:start position:0%
scenes since that deposit stake cause
 

00:35:26.920 --> 00:35:29.490 align:start position:0%
scenes since that deposit stake cause
the<00:35:27.100><c> deposit</c><00:35:27.520><c> function</c>

00:35:29.490 --> 00:35:29.500 align:start position:0%
the deposit function
 

00:35:29.500 --> 00:35:30.480 align:start position:0%
the deposit function
if<00:35:29.590><c> you're</c><00:35:29.710><c> gonna</c><00:35:29.830><c> use</c><00:35:29.950><c> if</c><00:35:30.280><c> you're</c><00:35:30.400><c> gonna</c>

00:35:30.480 --> 00:35:30.490 align:start position:0%
if you're gonna use if you're gonna
 

00:35:30.490 --> 00:35:31.980 align:start position:0%
if you're gonna use if you're gonna
import<00:35:30.700><c> safe</c><00:35:31.000><c> math</c><00:35:31.210><c> and</c><00:35:31.420><c> use</c><00:35:31.510><c> it</c><00:35:31.660><c> in</c><00:35:31.780><c> some</c>

00:35:31.980 --> 00:35:31.990 align:start position:0%
import safe math and use it in some
 

00:35:31.990 --> 00:35:33.990 align:start position:0%
import safe math and use it in some
places<00:35:32.200><c> best</c><00:35:32.650><c> to</c><00:35:33.220><c> use</c><00:35:33.370><c> it</c><00:35:33.580><c> everywhere</c>

00:35:33.990 --> 00:35:34.000 align:start position:0%
places best to use it everywhere
 

00:35:34.000 --> 00:35:36.870 align:start position:0%
places best to use it everywhere
consistently<00:35:35.100><c> at</c><00:35:36.100><c> least</c><00:35:36.400><c> in</c><00:35:36.550><c> my</c><00:35:36.700><c> opinion</c>

00:35:36.870 --> 00:35:36.880 align:start position:0%
consistently at least in my opinion
 

00:35:36.880 --> 00:35:39.060 align:start position:0%
consistently at least in my opinion
because<00:35:37.330><c> otherwise</c><00:35:37.540><c> it's</c><00:35:37.840><c> if</c><00:35:38.380><c> you</c><00:35:38.710><c> get</c><00:35:38.860><c> used</c>

00:35:39.060 --> 00:35:39.070 align:start position:0%
because otherwise it's if you get used
 

00:35:39.070 --> 00:35:42.270 align:start position:0%
because otherwise it's if you get used
to<00:35:39.220><c> seeing</c><00:35:39.370><c> mixed</c><00:35:39.970><c> code</c><00:35:40.770><c> you</c><00:35:41.770><c> know</c><00:35:41.860><c> mix</c><00:35:42.070><c> it</c>

00:35:42.270 --> 00:35:42.280 align:start position:0%
to seeing mixed code you know mix it
 

00:35:42.280 --> 00:35:44.130 align:start position:0%
to seeing mixed code you know mix it
some<00:35:42.460><c> safe</c><00:35:42.850><c> math</c><00:35:43.030><c> and</c><00:35:43.240><c> sometimes</c><00:35:43.600><c> otherwise</c>

00:35:44.130 --> 00:35:44.140 align:start position:0%
some safe math and sometimes otherwise
 

00:35:44.140 --> 00:35:47.190 align:start position:0%
some safe math and sometimes otherwise
not<00:35:44.590><c> it'll</c><00:35:45.100><c> it's</c><00:35:45.370><c> also</c><00:35:45.580><c> to</c><00:35:45.760><c> become</c><00:35:46.510><c> become</c><00:35:46.990><c> too</c>

00:35:47.190 --> 00:35:47.200 align:start position:0%
not it'll it's also to become become too
 

00:35:47.200 --> 00:35:50.310 align:start position:0%
not it'll it's also to become become too
easy<00:35:47.410><c> for</c><00:35:47.500><c> you</c><00:35:47.740><c> to</c><00:35:48.220><c> look</c><00:35:48.850><c> at</c><00:35:49.060><c> a</c><00:35:49.240><c> line</c><00:35:50.050><c> that</c>

00:35:50.310 --> 00:35:50.320 align:start position:0%
easy for you to look at a line that
 

00:35:50.320 --> 00:35:52.080 align:start position:0%
easy for you to look at a line that
needs<00:35:50.440><c> safe</c><00:35:50.740><c> math</c><00:35:51.010><c> and</c><00:35:51.310><c> then</c><00:35:51.610><c> just</c><00:35:51.760><c> ignore</c><00:35:52.060><c> it</c>

00:35:52.080 --> 00:35:52.090 align:start position:0%
needs safe math and then just ignore it
 

00:35:52.090 --> 00:35:53.820 align:start position:0%
needs safe math and then just ignore it
because<00:35:52.510><c> you're</c><00:35:52.780><c> just</c><00:35:52.960><c> used</c><00:35:53.140><c> to</c><00:35:53.200><c> you</c><00:35:53.740><c> know</c>

00:35:53.820 --> 00:35:53.830 align:start position:0%
because you're just used to you know
 

00:35:53.830 --> 00:35:55.230 align:start position:0%
because you're just used to you know
like<00:35:54.040><c> the</c><00:35:54.160><c> cognitive</c><00:35:54.490><c> overload</c><00:35:54.790><c> of</c><00:35:55.120><c> like</c>

00:35:55.230 --> 00:35:55.240 align:start position:0%
like the cognitive overload of like
 

00:35:55.240 --> 00:35:57.360 align:start position:0%
like the cognitive overload of like
keeping<00:35:55.510><c> track</c><00:35:55.570><c> of</c><00:35:55.840><c> what</c><00:35:56.020><c> which</c><00:35:56.620><c> threshold</c><00:35:57.220><c> am</c>

00:35:57.360 --> 00:35:57.370 align:start position:0%
keeping track of what which threshold am
 

00:35:57.370 --> 00:35:58.890 align:start position:0%
keeping track of what which threshold am
I<00:35:57.460><c> using</c><00:35:57.610><c> safe</c><00:35:57.850><c> math</c><00:35:58.030><c> on</c><00:35:58.240><c> you</c><00:35:58.450><c> know</c><00:35:58.540><c> it's</c><00:35:58.660><c> you</c>

00:35:58.890 --> 00:35:58.900 align:start position:0%
I using safe math on you know it's you
 

00:35:58.900 --> 00:36:03.180 align:start position:0%
I using safe math on you know it's you
can<00:35:59.080><c> easily</c><00:35:59.350><c> get</c><00:35:59.620><c> mixed</c><00:35:59.890><c> mixed</c><00:36:00.280><c> up</c><00:36:01.950><c> as</c><00:36:02.950><c> a</c><00:36:03.040><c> more</c>

00:36:03.180 --> 00:36:03.190 align:start position:0%
can easily get mixed mixed up as a more
 

00:36:03.190 --> 00:36:04.350 align:start position:0%
can easily get mixed mixed up as a more
generic<00:36:03.310><c> thing</c><00:36:03.640><c> I</c><00:36:03.700><c> want</c><00:36:03.850><c> pointed</c><00:36:04.150><c> as</c><00:36:04.240><c> well</c>

00:36:04.350 --> 00:36:04.360 align:start position:0%
generic thing I want pointed as well
 

00:36:04.360 --> 00:36:06.570 align:start position:0%
generic thing I want pointed as well
like<00:36:04.540><c> a</c><00:36:04.570><c> lot</c><00:36:04.810><c> of</c><00:36:04.840><c> auditing</c><00:36:05.830><c> is</c><00:36:05.980><c> just</c><00:36:06.220><c> kind</c><00:36:06.550><c> of</c>

00:36:06.570 --> 00:36:06.580 align:start position:0%
like a lot of auditing is just kind of
 

00:36:06.580 --> 00:36:07.380 align:start position:0%
like a lot of auditing is just kind of
getting<00:36:06.730><c> your</c><00:36:06.820><c> head</c><00:36:06.970><c> wrapped</c><00:36:07.120><c> around</c><00:36:07.180><c> with</c>

00:36:07.380 --> 00:36:07.390 align:start position:0%
getting your head wrapped around with
 

00:36:07.390 --> 00:36:08.310 align:start position:0%
getting your head wrapped around with
the<00:36:07.450><c> contracts</c><00:36:07.750><c> trying</c><00:36:07.930><c> to</c><00:36:07.990><c> do</c><00:36:08.050><c> the</c><00:36:08.140><c> first</c>

00:36:08.310 --> 00:36:08.320 align:start position:0%
the contracts trying to do the first
 

00:36:08.320 --> 00:36:10.950 align:start position:0%
the contracts trying to do the first
place<00:36:08.790><c> yeah</c><00:36:09.790><c> going</c><00:36:10.090><c> back</c><00:36:10.330><c> to</c><00:36:10.450><c> the</c><00:36:10.540><c> description</c>

00:36:10.950 --> 00:36:10.960 align:start position:0%
place yeah going back to the description
 

00:36:10.960 --> 00:36:12.660 align:start position:0%
place yeah going back to the description
like<00:36:11.080><c> it's</c><00:36:11.260><c> a</c><00:36:11.320><c> yeah</c><00:36:11.980><c> that's</c><00:36:12.220><c> kind</c><00:36:12.460><c> of</c><00:36:12.520><c> why</c>

00:36:12.660 --> 00:36:12.670 align:start position:0%
like it's a yeah that's kind of why
 

00:36:12.670 --> 00:36:17.370 align:start position:0%
like it's a yeah that's kind of why
being<00:36:13.240><c> an</c><00:36:13.570><c> effective</c><00:36:14.320><c> auditor</c><00:36:16.050><c> ties</c><00:36:17.050><c> well</c>

00:36:17.370 --> 00:36:17.380 align:start position:0%
being an effective auditor ties well
 

00:36:17.380 --> 00:36:19.830 align:start position:0%
being an effective auditor ties well
together<00:36:17.640><c> not</c><00:36:18.640><c> being</c><00:36:18.880><c> afraid</c><00:36:19.180><c> to</c><00:36:19.300><c> ask</c><00:36:19.420><c> stupid</c>

00:36:19.830 --> 00:36:19.840 align:start position:0%
together not being afraid to ask stupid
 

00:36:19.840 --> 00:36:20.490 align:start position:0%
together not being afraid to ask stupid
questions

00:36:20.490 --> 00:36:20.500 align:start position:0%
questions
 

00:36:20.500 --> 00:36:23.910 align:start position:0%
questions
exactly<00:36:21.300><c> yeah</c><00:36:22.300><c> yeah</c><00:36:22.540><c> oftentimes</c><00:36:23.200><c> like</c><00:36:23.590><c> the</c>

00:36:23.910 --> 00:36:23.920 align:start position:0%
exactly yeah yeah oftentimes like the
 

00:36:23.920 --> 00:36:26.340 align:start position:0%
exactly yeah yeah oftentimes like the
the<00:36:24.280><c> biggest</c><00:36:24.700><c> vulnerabilities</c><00:36:25.510><c> are</c><00:36:25.720><c> the</c><00:36:26.170><c> ones</c>

00:36:26.340 --> 00:36:26.350 align:start position:0%
the biggest vulnerabilities are the ones
 

00:36:26.350 --> 00:36:28.710 align:start position:0%
the biggest vulnerabilities are the ones
that<00:36:26.410><c> are</c><00:36:26.560><c> most</c><00:36:26.650><c> obvious</c><00:36:26.920><c> or</c><00:36:27.370><c> the</c><00:36:28.120><c> ones</c><00:36:28.330><c> where</c>

00:36:28.710 --> 00:36:28.720 align:start position:0%
that are most obvious or the ones where
 

00:36:28.720 --> 00:36:30.750 align:start position:0%
that are most obvious or the ones where
like<00:36:29.470><c> you</c><00:36:29.620><c> you</c><00:36:29.920><c> know</c><00:36:30.040><c> you're</c><00:36:30.190><c> reading</c><00:36:30.370><c> the</c>

00:36:30.750 --> 00:36:30.760 align:start position:0%
like you you know you're reading the
 

00:36:30.760 --> 00:36:33.540 align:start position:0%
like you you know you're reading the
code<00:36:30.940><c> and</c><00:36:31.240><c> it</c><00:36:31.540><c> kind</c><00:36:31.990><c> of</c><00:36:32.110><c> it's</c><00:36:32.950><c> structured</c><00:36:33.430><c> in</c><00:36:33.490><c> a</c>

00:36:33.540 --> 00:36:33.550 align:start position:0%
code and it kind of it's structured in a
 

00:36:33.550 --> 00:36:36.780 align:start position:0%
code and it kind of it's structured in a
way<00:36:33.580><c> to</c><00:36:33.730><c> make</c><00:36:34.000><c> you</c><00:36:34.180><c> believe</c><00:36:34.360><c> something</c><00:36:35.790><c> what</c>

00:36:36.780 --> 00:36:36.790 align:start position:0%
way to make you believe something what
 

00:36:36.790 --> 00:36:39.630 align:start position:0%
way to make you believe something what
that<00:36:36.970><c> isn't</c><00:36:37.270><c> actually</c><00:36:37.570><c> true</c><00:36:37.830><c> and</c><00:36:38.830><c> so</c><00:36:39.130><c> you</c><00:36:39.520><c> know</c>

00:36:39.630 --> 00:36:39.640 align:start position:0%
that isn't actually true and so you know
 

00:36:39.640 --> 00:36:42.270 align:start position:0%
that isn't actually true and so you know
like<00:36:40.260><c> when</c><00:36:41.260><c> you</c><00:36:41.350><c> get</c><00:36:41.440><c> that</c><00:36:41.620><c> inclination</c><00:36:41.830><c> to</c><00:36:42.190><c> be</c>

00:36:42.270 --> 00:36:42.280 align:start position:0%
like when you get that inclination to be
 

00:36:42.280 --> 00:36:43.860 align:start position:0%
like when you get that inclination to be
like<00:36:42.400><c> oh</c><00:36:42.490><c> should</c><00:36:42.700><c> be</c><00:36:42.790><c> really</c><00:36:43.060><c> this</c><00:36:43.180><c> should</c><00:36:43.420><c> be</c>

00:36:43.860 --> 00:36:43.870 align:start position:0%
like oh should be really this should be
 

00:36:43.870 --> 00:36:45.690 align:start position:0%
like oh should be really this should be
should<00:36:44.380><c> this</c><00:36:44.500><c> really</c><00:36:44.800><c> business</c><00:36:45.130><c> this</c><00:36:45.490><c> way</c>

00:36:45.690 --> 00:36:45.700 align:start position:0%
should this really business this way
 

00:36:45.700 --> 00:36:47.880 align:start position:0%
should this really business this way
it's<00:36:46.390><c> important</c><00:36:46.690><c> to</c><00:36:46.750><c> like</c><00:36:46.930><c> you</c><00:36:47.230><c> know</c><00:36:47.350><c> voice</c>

00:36:47.880 --> 00:36:47.890 align:start position:0%
it's important to like you know voice
 

00:36:47.890 --> 00:36:49.470 align:start position:0%
it's important to like you know voice
those<00:36:48.220><c> concerns</c><00:36:48.580><c> and</c><00:36:48.670><c> actually</c><00:36:48.940><c> act</c><00:36:49.120><c> on</c><00:36:49.300><c> them</c>

00:36:49.470 --> 00:36:49.480 align:start position:0%
those concerns and actually act on them
 

00:36:49.480 --> 00:36:51.270 align:start position:0%
those concerns and actually act on them
super<00:36:50.020><c> being</c><00:36:50.230><c> oh</c><00:36:50.440><c> I'm</c><00:36:50.740><c> sure</c><00:36:50.920><c> that's</c><00:36:51.070><c> fine</c>

00:36:51.270 --> 00:36:51.280 align:start position:0%
super being oh I'm sure that's fine
 

00:36:51.280 --> 00:36:54.150 align:start position:0%
super being oh I'm sure that's fine
nobody<00:36:51.580><c> would</c><00:36:51.760><c> get</c><00:36:51.880><c> that</c><00:36:52.000><c> wrong</c><00:36:53.070><c> you</c><00:36:54.070><c> know</c>

00:36:54.150 --> 00:36:54.160 align:start position:0%
nobody would get that wrong you know
 

00:36:54.160 --> 00:36:55.560 align:start position:0%
nobody would get that wrong you know
like<00:36:54.460><c> you</c><00:36:54.700><c> know</c><00:36:54.730><c> we've</c><00:36:54.970><c> seen</c><00:36:55.090><c> some</c><00:36:55.150><c> pretty</c>

00:36:55.560 --> 00:36:55.570 align:start position:0%
like you know we've seen some pretty
 

00:36:55.570 --> 00:36:59.850 align:start position:0%
like you know we've seen some pretty
pretty<00:36:56.520><c> drastic</c><00:36:58.170><c> outcomes</c><00:36:59.170><c> based</c><00:36:59.500><c> on</c><00:36:59.710><c> you</c>

00:36:59.850 --> 00:36:59.860 align:start position:0%
pretty drastic outcomes based on you
 

00:36:59.860 --> 00:37:02.580 align:start position:0%
pretty drastic outcomes based on you
know<00:36:59.980><c> that</c><00:37:00.160><c> kind</c><00:37:00.400><c> of</c><00:37:00.520><c> right</c><00:37:01.150><c> mind</c><00:37:02.110><c> said</c><00:37:02.260><c> two</c>

00:37:02.580 --> 00:37:02.590 align:start position:0%
know that kind of right mind said two
 

00:37:02.590 --> 00:37:13.070 align:start position:0%
know that kind of right mind said two
lines<00:37:02.830><c> being</c><00:37:03.160><c> flipped</c><00:37:03.460><c> yeah</c><00:37:11.340><c> our</c><00:37:12.340><c> message</c><00:37:12.790><c> is</c>

00:37:13.070 --> 00:37:13.080 align:start position:0%
lines being flipped yeah our message is
 

00:37:13.080 --> 00:37:16.470 align:start position:0%
lines being flipped yeah our message is
like<00:37:14.080><c> the</c><00:37:14.950><c> other</c><00:37:15.100><c> way</c><00:37:15.250><c> around</c><00:37:15.400><c> so</c><00:37:15.700><c> it</c><00:37:16.300><c> should</c>

00:37:16.470 --> 00:37:16.480 align:start position:0%
like the other way around so it should
 

00:37:16.480 --> 00:37:20.610 align:start position:0%
like the other way around so it should
say<00:37:16.870><c> steak</c><00:37:17.200><c> is</c><00:37:17.410><c> over</c><00:37:17.980><c> a</c><00:37:18.010><c> limit</c><00:37:19.140><c> because</c><00:37:20.140><c> that's</c>

00:37:20.610 --> 00:37:20.620 align:start position:0%
say steak is over a limit because that's
 

00:37:20.620 --> 00:37:31.590 align:start position:0%
say steak is over a limit because that's
what<00:37:20.860><c> it</c><00:37:21.370><c> throws</c><00:37:21.730><c> when</c><00:37:22.170><c> it</c><00:37:23.170><c> fails</c><00:37:29.910><c> no</c><00:37:30.910><c> no</c><00:37:31.210><c> this</c>

00:37:31.590 --> 00:37:31.600 align:start position:0%
what it throws when it fails no no this
 

00:37:31.600 --> 00:37:33.600 align:start position:0%
what it throws when it fails no no this
is<00:37:31.840><c> an</c><00:37:32.080><c> error</c><00:37:32.470><c> message</c><00:37:32.650><c> that</c><00:37:32.860><c> will</c><00:37:33.190><c> be</c><00:37:33.310><c> thrown</c>

00:37:33.600 --> 00:37:33.610 align:start position:0%
is an error message that will be thrown
 

00:37:33.610 --> 00:37:36.780 align:start position:0%
is an error message that will be thrown
right<00:37:34.000><c> so</c><00:37:34.390><c> it</c><00:37:34.540><c> should</c><00:37:34.750><c> what</c><00:37:35.740><c> went</c><00:37:36.160><c> wrong</c><00:37:36.370><c> but</c>

00:37:36.780 --> 00:37:36.790 align:start position:0%
right so it should what went wrong but
 

00:37:36.790 --> 00:37:40.050 align:start position:0%
right so it should what went wrong but
he<00:37:36.970><c> stated</c><00:37:37.330><c> what</c><00:37:37.750><c> was</c><00:37:38.380><c> violated</c><00:37:39.040><c> yeah</c><00:37:39.550><c> I</c><00:37:39.940><c> I</c>

00:37:40.050 --> 00:37:40.060 align:start position:0%
he stated what was violated yeah I I
 

00:37:40.060 --> 00:37:42.360 align:start position:0%
he stated what was violated yeah I I
agree<00:37:40.540><c> with</c><00:37:40.960><c> you</c><00:37:41.110><c> but</c><00:37:41.320><c> I</c><00:37:41.410><c> can</c><00:37:41.590><c> see</c><00:37:41.800><c> the</c><00:37:41.980><c> the</c>

00:37:42.360 --> 00:37:42.370 align:start position:0%
agree with you but I can see the the
 

00:37:42.370 --> 00:37:43.510 align:start position:0%
agree with you but I can see the the
other<00:37:42.490><c> side</c>

00:37:43.510 --> 00:37:43.520 align:start position:0%
other side
 

00:37:43.520 --> 00:37:44.770 align:start position:0%
other side
because<00:37:43.880><c> you</c><00:37:43.970><c> can</c><00:37:44.059><c> imagine</c><00:37:44.210><c> the</c><00:37:44.450><c> output</c><00:37:44.690><c> would</c>

00:37:44.770 --> 00:37:44.780 align:start position:0%
because you can imagine the output would
 

00:37:44.780 --> 00:37:46.839 align:start position:0%
because you can imagine the output would
say<00:37:44.900><c> fail</c><00:37:45.230><c> and</c><00:37:45.650><c> then</c><00:37:45.920><c> explain</c><00:37:46.460><c> what</c><00:37:46.609><c> was</c>

00:37:46.839 --> 00:37:46.849 align:start position:0%
say fail and then explain what was
 

00:37:46.849 --> 00:37:47.710 align:start position:0%
say fail and then explain what was
supposed<00:37:47.000><c> to</c><00:37:47.299><c> happen</c>

00:37:47.710 --> 00:37:47.720 align:start position:0%
supposed to happen
 

00:37:47.720 --> 00:37:51.849 align:start position:0%
supposed to happen
it's<00:37:48.079><c> I</c><00:37:49.900><c> this</c><00:37:50.900><c> is</c><00:37:51.079><c> a</c><00:37:51.140><c> question</c><00:37:51.440><c> going</c><00:37:51.589><c> back</c>

00:37:51.849 --> 00:37:51.859 align:start position:0%
it's I this is a question going back
 

00:37:51.859 --> 00:37:53.589 align:start position:0%
it's I this is a question going back
maybe<00:37:52.069><c> like</c><00:37:52.400><c> one</c><00:37:52.609><c> or</c><00:37:52.730><c> two</c><00:37:52.849><c> steps</c><00:37:53.059><c> when</c><00:37:53.390><c> we</c><00:37:53.540><c> were</c>

00:37:53.589 --> 00:37:53.599 align:start position:0%
maybe like one or two steps when we were
 

00:37:53.599 --> 00:37:55.359 align:start position:0%
maybe like one or two steps when we were
talking<00:37:53.869><c> about</c><00:37:53.930><c> wrapping</c><00:37:54.770><c> the</c><00:37:54.890><c> transfer</c>

00:37:55.359 --> 00:37:55.369 align:start position:0%
talking about wrapping the transfer
 

00:37:55.369 --> 00:37:57.849 align:start position:0%
talking about wrapping the transfer
function<00:37:55.760><c> and</c><00:37:55.940><c> a</c><00:37:56.299><c> require</c><00:37:56.690><c> is</c><00:37:57.020><c> that</c><00:37:57.650><c> like</c><00:37:57.829><c> a</c>

00:37:57.849 --> 00:37:57.859 align:start position:0%
function and a require is that like a
 

00:37:57.859 --> 00:37:59.589 align:start position:0%
function and a require is that like a
general<00:37:58.309><c> good</c><00:37:58.640><c> practice</c><00:37:59.089><c> for</c><00:37:59.119><c> when</c><00:37:59.359><c> you're</c>

00:37:59.589 --> 00:37:59.599 align:start position:0%
general good practice for when you're
 

00:37:59.599 --> 00:38:02.829 align:start position:0%
general good practice for when you're
making<00:37:59.750><c> a</c><00:38:00.079><c> call</c><00:38:00.290><c> out</c><00:38:00.500><c> to</c><00:38:00.740><c> another</c><00:38:01.839><c> contract</c>

00:38:02.829 --> 00:38:02.839 align:start position:0%
making a call out to another contract
 

00:38:02.839 --> 00:38:04.089 align:start position:0%
making a call out to another contract
function<00:38:03.260><c> that</c><00:38:03.380><c> you</c><00:38:03.470><c> should</c><00:38:03.619><c> wrap</c><00:38:03.859><c> it</c><00:38:03.890><c> or</c>

00:38:04.089 --> 00:38:04.099 align:start position:0%
function that you should wrap it or
 

00:38:04.099 --> 00:38:05.920 align:start position:0%
function that you should wrap it or
acquire<00:38:04.490><c> if</c><00:38:05.150><c> you</c><00:38:05.299><c> don't</c><00:38:05.450><c> have</c><00:38:05.599><c> some</c><00:38:05.750><c> other</c>

00:38:05.920 --> 00:38:05.930 align:start position:0%
acquire if you don't have some other
 

00:38:05.930 --> 00:38:08.200 align:start position:0%
acquire if you don't have some other
mechanism<00:38:06.500><c> to</c><00:38:06.710><c> check</c><00:38:07.460><c> to</c><00:38:07.579><c> be</c><00:38:07.700><c> sure</c><00:38:07.730><c> that</c><00:38:08.059><c> it's</c>

00:38:08.200 --> 00:38:08.210 align:start position:0%
mechanism to check to be sure that it's
 

00:38:08.210 --> 00:38:11.319 align:start position:0%
mechanism to check to be sure that it's
exceeded<00:38:08.809><c> yes</c><00:38:09.470><c> or</c><00:38:09.740><c> like</c><00:38:09.859><c> it</c><00:38:10.010><c> I</c><00:38:10.099><c> became</c><00:38:11.059><c> yeah</c><00:38:11.299><c> I</c>

00:38:11.319 --> 00:38:11.329 align:start position:0%
exceeded yes or like it I became yeah I
 

00:38:11.329 --> 00:38:12.789 align:start position:0%
exceeded yes or like it I became yeah I
mean<00:38:11.569><c> it</c><00:38:11.690><c> that's</c><00:38:11.960><c> a</c><00:38:11.990><c> good</c><00:38:12.079><c> question</c><00:38:12.410><c> so</c><00:38:12.619><c> like</c>

00:38:12.789 --> 00:38:12.799 align:start position:0%
mean it that's a good question so like
 

00:38:12.799 --> 00:38:15.640 align:start position:0%
mean it that's a good question so like
definitely<00:38:13.130><c> don't</c><00:38:13.460><c> take</c><00:38:13.940><c> from</c><00:38:14.240><c> this</c><00:38:14.480><c> that</c><00:38:15.020><c> you</c>

00:38:15.640 --> 00:38:15.650 align:start position:0%
definitely don't take from this that you
 

00:38:15.650 --> 00:38:17.170 align:start position:0%
definitely don't take from this that you
should<00:38:15.890><c> all</c><00:38:16.160><c> anytime</c><00:38:16.730><c> you're</c><00:38:16.849><c> always</c><00:38:16.940><c> calling</c>

00:38:17.170 --> 00:38:17.180 align:start position:0%
should all anytime you're always calling
 

00:38:17.180 --> 00:38:18.819 align:start position:0%
should all anytime you're always calling
out<00:38:17.359><c> you</c><00:38:17.480><c> should</c><00:38:17.660><c> always</c><00:38:17.930><c> represent</c><00:38:18.530><c> our</c><00:38:18.650><c> car</c>

00:38:18.819 --> 00:38:18.829 align:start position:0%
out you should always represent our car
 

00:38:18.829 --> 00:38:20.740 align:start position:0%
out you should always represent our car
because<00:38:19.130><c> that</c><00:38:19.160><c> in</c><00:38:19.549><c> itself</c><00:38:19.700><c> can</c><00:38:20.210><c> create</c>

00:38:20.740 --> 00:38:20.750 align:start position:0%
because that in itself can create
 

00:38:20.750 --> 00:38:22.660 align:start position:0%
because that in itself can create
vulnerabilities<00:38:20.990><c> right</c><00:38:21.740><c> like</c><00:38:22.250><c> if</c><00:38:22.400><c> there's</c><00:38:22.609><c> a</c>

00:38:22.660 --> 00:38:22.670 align:start position:0%
vulnerabilities right like if there's a
 

00:38:22.670 --> 00:38:24.849 align:start position:0%
vulnerabilities right like if there's a
contract<00:38:23.210><c> for</c><00:38:23.420><c> example</c><00:38:23.480><c> that</c><00:38:23.990><c> I</c><00:38:24.230><c> to</c><00:38:24.500><c> rates</c>

00:38:24.849 --> 00:38:24.859 align:start position:0%
contract for example that I to rates
 

00:38:24.859 --> 00:38:26.890 align:start position:0%
contract for example that I to rates
over<00:38:25.280><c> a</c><00:38:25.309><c> bunch</c><00:38:25.520><c> of</c><00:38:25.579><c> addresses</c><00:38:25.760><c> and</c><00:38:26.150><c> it</c><00:38:26.480><c> wants</c>

00:38:26.890 --> 00:38:26.900 align:start position:0%
over a bunch of addresses and it wants
 

00:38:26.900 --> 00:38:27.910 align:start position:0%
over a bunch of addresses and it wants
to<00:38:26.930><c> give</c><00:38:27.109><c> a</c><00:38:27.140><c> payout</c><00:38:27.380><c> to</c><00:38:27.619><c> each</c><00:38:27.740><c> of</c><00:38:27.859><c> those</c>

00:38:27.910 --> 00:38:27.920 align:start position:0%
to give a payout to each of those
 

00:38:27.920 --> 00:38:29.109 align:start position:0%
to give a payout to each of those
addresses<00:38:28.250><c> right</c><00:38:28.490><c> if</c><00:38:28.700><c> one</c><00:38:28.970><c> of</c><00:38:29.059><c> those</c>

00:38:29.109 --> 00:38:29.119 align:start position:0%
addresses right if one of those
 

00:38:29.119 --> 00:38:30.910 align:start position:0%
addresses right if one of those
addresses<00:38:29.329><c> is</c><00:38:29.720><c> a</c><00:38:29.750><c> smart</c><00:38:30.109><c> contract</c><00:38:30.290><c> that's</c>

00:38:30.910 --> 00:38:30.920 align:start position:0%
addresses is a smart contract that's
 

00:38:30.920 --> 00:38:33.400 align:start position:0%
addresses is a smart contract that's
malicious<00:38:31.549><c> it</c><00:38:31.819><c> can</c><00:38:32.210><c> just</c><00:38:32.359><c> throw</c><00:38:32.690><c> the</c><00:38:33.109><c> moment</c>

00:38:33.400 --> 00:38:33.410 align:start position:0%
malicious it can just throw the moment
 

00:38:33.410 --> 00:38:35.170 align:start position:0%
malicious it can just throw the moment
you<00:38:33.470><c> you</c><00:38:33.740><c> give</c><00:38:34.040><c> something</c><00:38:34.280><c> it</c><00:38:34.490><c> and</c><00:38:34.640><c> then</c><00:38:34.760><c> you</c>

00:38:35.170 --> 00:38:35.180 align:start position:0%
you you give something it and then you
 

00:38:35.180 --> 00:38:37.120 align:start position:0%
you you give something it and then you
you<00:38:35.390><c> send</c><00:38:35.630><c> something</c><00:38:35.750><c> to</c><00:38:35.869><c> it</c><00:38:36.140><c> and</c><00:38:36.290><c> then</c><00:38:36.770><c> all</c>

00:38:37.120 --> 00:38:37.130 align:start position:0%
you send something to it and then all
 

00:38:37.130 --> 00:38:38.950 align:start position:0%
you send something to it and then all
the<00:38:37.369><c> other</c><00:38:37.490><c> payouts</c><00:38:38.000><c> are</c><00:38:38.180><c> stuck</c><00:38:38.450><c> because</c><00:38:38.720><c> of</c>

00:38:38.950 --> 00:38:38.960 align:start position:0%
the other payouts are stuck because of
 

00:38:38.960 --> 00:38:40.210 align:start position:0%
the other payouts are stuck because of
my<00:38:39.079><c> malicious</c><00:38:39.410><c> contract</c><00:38:39.859><c> and</c><00:38:40.010><c> I</c><00:38:40.069><c> could</c>

00:38:40.210 --> 00:38:40.220 align:start position:0%
my malicious contract and I could
 

00:38:40.220 --> 00:38:42.190 align:start position:0%
my malicious contract and I could
blackmail<00:38:40.490><c> a</c><00:38:40.819><c> with</c><00:38:41.000><c> that</c><00:38:41.119><c> saying</c><00:38:41.450><c> now</c><00:38:41.960><c> you're</c>

00:38:42.190 --> 00:38:42.200 align:start position:0%
blackmail a with that saying now you're
 

00:38:42.200 --> 00:38:43.720 align:start position:0%
blackmail a with that saying now you're
gonna<00:38:42.319><c> you're</c><00:38:42.680><c> all</c><00:38:42.799><c> gonna</c><00:38:42.950><c> send</c><00:38:43.190><c> me</c><00:38:43.280><c> one</c>

00:38:43.720 --> 00:38:43.730 align:start position:0%
gonna you're all gonna send me one
 

00:38:43.730 --> 00:38:44.170 align:start position:0%
gonna you're all gonna send me one
either

00:38:44.170 --> 00:38:44.180 align:start position:0%
either
 

00:38:44.180 --> 00:38:46.569 align:start position:0%
either
otherwise<00:38:44.839><c> I'm</c><00:38:45.230><c> gonna</c><00:38:45.829><c> block</c><00:38:46.040><c> your</c><00:38:46.190><c> to</c><00:38:46.400><c> either</c>

00:38:46.569 --> 00:38:46.579 align:start position:0%
otherwise I'm gonna block your to either
 

00:38:46.579 --> 00:38:48.430 align:start position:0%
otherwise I'm gonna block your to either
payout<00:38:46.880><c> forever</c><00:38:47.210><c> right</c><00:38:47.569><c> so</c><00:38:48.079><c> you</c><00:38:48.140><c> should</c>

00:38:48.430 --> 00:38:48.440 align:start position:0%
payout forever right so you should
 

00:38:48.440 --> 00:38:50.770 align:start position:0%
payout forever right so you should
always<00:38:49.280><c> you</c><00:38:49.819><c> should</c><00:38:49.849><c> first</c><00:38:50.180><c> first</c><00:38:50.630><c> of</c><00:38:50.690><c> all</c><00:38:50.750><c> I</c>

00:38:50.770 --> 00:38:50.780 align:start position:0%
always you should first first of all I
 

00:38:50.780 --> 00:38:52.150 align:start position:0%
always you should first first of all I
try<00:38:50.839><c> not</c><00:38:50.990><c> to</c><00:38:51.109><c> do</c><00:38:51.200><c> that</c><00:38:51.319><c> loop</c><00:38:51.530><c> contract</c><00:38:52.010><c> which</c>

00:38:52.150 --> 00:38:52.160 align:start position:0%
try not to do that loop contract which
 

00:38:52.160 --> 00:38:55.569 align:start position:0%
try not to do that loop contract which
is<00:38:52.280><c> bad</c><00:38:52.430><c> but</c><00:38:52.849><c> besides</c><00:38:53.150><c> that</c><00:38:53.290><c> you</c><00:38:54.290><c> should</c><00:38:54.619><c> you</c>

00:38:55.569 --> 00:38:55.579 align:start position:0%
is bad but besides that you should you
 

00:38:55.579 --> 00:38:57.220 align:start position:0%
is bad but besides that you should you
should<00:38:55.609><c> wrap</c><00:38:55.940><c> things</c><00:38:56.299><c> weren't</c><00:38:56.480><c> requires</c><00:38:56.809><c> if</c>

00:38:57.220 --> 00:38:57.230 align:start position:0%
should wrap things weren't requires if
 

00:38:57.230 --> 00:39:02.460 align:start position:0%
should wrap things weren't requires if
and<00:38:57.650><c> only</c><00:38:57.710><c> if</c><00:38:59.140><c> that</c><00:39:00.140><c> line</c><00:39:00.859><c> failing</c><00:39:01.460><c> is</c><00:39:01.640><c> just</c>

00:39:02.460 --> 00:39:02.470 align:start position:0%
and only if that line failing is just
 

00:39:02.470 --> 00:39:04.510 align:start position:0%
and only if that line failing is just
critical<00:39:03.470><c> damage</c><00:39:03.619><c> to</c><00:39:03.890><c> your</c><00:39:03.980><c> contract</c><00:39:04.369><c> right</c>

00:39:04.510 --> 00:39:04.520 align:start position:0%
critical damage to your contract right
 

00:39:04.520 --> 00:39:07.780 align:start position:0%
critical damage to your contract right
if<00:39:04.670><c> it</c><00:39:05.059><c> if</c><00:39:05.270><c> like</c><00:39:05.599><c> if</c><00:39:05.990><c> this</c><00:39:06.680><c> line</c><00:39:06.920><c> fails</c><00:39:07.220><c> then</c>

00:39:07.780 --> 00:39:07.790 align:start position:0%
if it if like if this line fails then
 

00:39:07.790 --> 00:39:09.609 align:start position:0%
if it if like if this line fails then
nothing<00:39:08.420><c> should</c><00:39:08.540><c> happen</c><00:39:08.599><c> right</c><00:39:09.140><c> otherwise</c>

00:39:09.609 --> 00:39:09.619 align:start position:0%
nothing should happen right otherwise
 

00:39:09.619 --> 00:39:12.640 align:start position:0%
nothing should happen right otherwise
try<00:39:10.549><c> to</c><00:39:10.609><c> catch</c><00:39:10.819><c> the</c><00:39:11.210><c> return</c><00:39:11.540><c> right</c><00:39:11.900><c> if</c><00:39:12.109><c> there</c>

00:39:12.640 --> 00:39:12.650 align:start position:0%
try to catch the return right if there
 

00:39:12.650 --> 00:39:14.289 align:start position:0%
try to catch the return right if there
is<00:39:12.770><c> a</c><00:39:12.799><c> return</c><00:39:13.160><c> you</c><00:39:13.369><c> need</c><00:39:13.549><c> to</c><00:39:13.640><c> be</c><00:39:13.700><c> very</c><00:39:13.849><c> context</c>

00:39:14.289 --> 00:39:14.299 align:start position:0%
is a return you need to be very context
 

00:39:14.299 --> 00:39:17.349 align:start position:0%
is a return you need to be very context
aware<00:39:15.369><c> yeah</c><00:39:16.369><c> it</c><00:39:16.640><c> looks</c><00:39:16.940><c> like</c><00:39:16.970><c> important</c><00:39:17.270><c> has</c>

00:39:17.349 --> 00:39:17.359 align:start position:0%
aware yeah it looks like important has
 

00:39:17.359 --> 00:39:19.960 align:start position:0%
aware yeah it looks like important has
something<00:39:17.569><c> yeah</c><00:39:18.079><c> so</c><00:39:18.410><c> I</c><00:39:18.589><c> think</c><00:39:19.010><c> isn't</c><00:39:19.160><c> there</c><00:39:19.520><c> an</c>

00:39:19.960 --> 00:39:19.970 align:start position:0%
something yeah so I think isn't there an
 

00:39:19.970 --> 00:39:23.950 align:start position:0%
something yeah so I think isn't there an
hour<00:39:20.210><c> program</c><00:39:20.720><c> on</c><00:39:21.049><c> in</c><00:39:22.040><c> deposit</c><00:39:22.660><c> Texas</c><00:39:23.660><c> I</c><00:39:23.690><c> mean</c>

00:39:23.950 --> 00:39:23.960 align:start position:0%
hour program on in deposit Texas I mean
 

00:39:23.960 --> 00:39:26.730 align:start position:0%
hour program on in deposit Texas I mean
internal<00:39:24.440><c> function</c><00:39:24.890><c> but</c><00:39:25.069><c> an</c><00:39:25.280><c> overflow</c>

00:39:26.730 --> 00:39:26.740 align:start position:0%
internal function but an overflow
 

00:39:26.740 --> 00:39:29.710 align:start position:0%
internal function but an overflow
because<00:39:27.740><c> the</c><00:39:28.069><c> balance</c><00:39:28.490><c> the</c><00:39:28.670><c> amount</c><00:39:28.970><c> is</c><00:39:29.329><c> you</c><00:39:29.569><c> in</c>

00:39:29.710 --> 00:39:29.720 align:start position:0%
because the balance the amount is you in
 

00:39:29.720 --> 00:39:33.280 align:start position:0%
because the balance the amount is you in
256<00:39:30.369><c> which</c><00:39:31.369><c> arrives</c><00:39:31.910><c> from</c><00:39:32.299><c> a</c><00:39:32.359><c> couple</c><00:39:32.720><c> of</c><00:39:32.869><c> lines</c>

00:39:33.280 --> 00:39:33.290 align:start position:0%
256 which arrives from a couple of lines
 

00:39:33.290 --> 00:39:38.260 align:start position:0%
256 which arrives from a couple of lines
above<00:39:33.770><c> and</c><00:39:34.579><c> it</c><00:39:34.849><c> is</c><00:39:35.710><c> addition</c><00:39:36.710><c> there</c><00:39:37.270><c> without</c>

00:39:38.260 --> 00:39:38.270 align:start position:0%
above and it is addition there without
 

00:39:38.270 --> 00:39:41.530 align:start position:0%
above and it is addition there without
overflow<00:39:39.069><c> checking</c><00:39:40.069><c> it</c><00:39:40.520><c> will</c><00:39:40.730><c> overflow</c><00:39:41.030><c> the</c>

00:39:41.530 --> 00:39:41.540 align:start position:0%
overflow checking it will overflow the
 

00:39:41.540 --> 00:39:43.210 align:start position:0%
overflow checking it will overflow the
new<00:39:41.660><c> balance</c><00:39:41.900><c> will</c><00:39:42.200><c> be</c><00:39:42.440><c> below</c><00:39:42.799><c> the</c><00:39:42.829><c> stake</c>

00:39:43.210 --> 00:39:43.220 align:start position:0%
new balance will be below the stake
 

00:39:43.220 --> 00:39:46.720 align:start position:0%
new balance will be below the stake
limits<00:39:43.640><c> or</c><00:39:44.089><c> well</c><00:39:45.049><c> not</c><00:39:46.040><c> necessarily</c>

00:39:46.720 --> 00:39:46.730 align:start position:0%
limits or well not necessarily
 

00:39:46.730 --> 00:39:50.319 align:start position:0%
limits or well not necessarily
so<00:39:47.599><c> or</c><00:39:48.140><c> maybe</c><00:39:48.380><c> necessarily</c><00:39:48.890><c> from</c><00:39:49.640><c> from</c><00:39:50.180><c> a</c>

00:39:50.319 --> 00:39:50.329 align:start position:0%
so or maybe necessarily from from a
 

00:39:50.329 --> 00:39:51.819 align:start position:0%
so or maybe necessarily from from a
quick<00:39:50.750><c> look</c><00:39:50.960><c> through</c><00:39:50.990><c> I</c><00:39:51.260><c> think</c><00:39:51.440><c> all</c><00:39:51.710><c> the</c>

00:39:51.819 --> 00:39:51.829 align:start position:0%
quick look through I think all the
 

00:39:51.829 --> 00:39:54.460 align:start position:0%
quick look through I think all the
places<00:39:52.040><c> deposited</c><00:39:52.730><c> called</c><00:39:53.000><c> the</c><00:39:53.569><c> amount</c><00:39:54.230><c> of</c>

00:39:54.460 --> 00:39:54.470 align:start position:0%
places deposited called the amount of
 

00:39:54.470 --> 00:39:56.720 align:start position:0%
places deposited called the amount of
seat<00:39:54.770><c> by</c><00:39:55.040><c> the</c><00:39:55.099><c> smart</c><00:39:55.520><c> contract</c><00:39:56.030><c> so</c><00:39:56.329><c> it</c><00:39:56.450><c> can</c>

00:39:56.720 --> 00:39:56.730 align:start position:0%
seat by the smart contract so it can
 

00:39:56.730 --> 00:40:00.110 align:start position:0%
seat by the smart contract so it can
sure<00:39:57.740><c> you</c><00:39:58.740><c> know</c><00:39:58.860><c> that</c><00:39:59.130><c> last</c><00:39:59.430><c> total</c><00:39:59.640><c> suppliers</c>

00:40:00.110 --> 00:40:00.120 align:start position:0%
sure you know that last total suppliers
 

00:40:00.120 --> 00:40:02.330 align:start position:0%
sure you know that last total suppliers
not<00:40:00.570><c> overflowed</c><00:40:01.170><c> but</c><00:40:01.380><c> it's</c><00:40:01.530><c> it</c><00:40:01.830><c> speaks</c><00:40:02.220><c> to</c>

00:40:02.330 --> 00:40:02.340 align:start position:0%
not overflowed but it's it speaks to
 

00:40:02.340 --> 00:40:04.730 align:start position:0%
not overflowed but it's it speaks to
talking<00:40:02.730><c> about</c><00:40:02.970><c> making</c><00:40:03.600><c> ng</c><00:40:03.810><c> fragile</c><00:40:04.170><c> code</c><00:40:04.380><c> we</c>

00:40:04.730 --> 00:40:04.740 align:start position:0%
talking about making ng fragile code we
 

00:40:04.740 --> 00:40:06.860 align:start position:0%
talking about making ng fragile code we
you<00:40:04.920><c> should</c><00:40:04.980><c> add</c><00:40:05.700><c> these</c><00:40:05.970><c> chicks</c><00:40:06.300><c> even</c><00:40:06.690><c> if</c><00:40:06.780><c> you</c>

00:40:06.860 --> 00:40:06.870 align:start position:0%
you should add these chicks even if you
 

00:40:06.870 --> 00:40:09.740 align:start position:0%
you should add these chicks even if you
don't<00:40:07.050><c> think</c><00:40:07.140><c> they</c><00:40:07.350><c> can</c><00:40:07.410><c> happen</c><00:40:08.480><c> is</c><00:40:09.480><c> the</c><00:40:09.600><c> code</c>

00:40:09.740 --> 00:40:09.750 align:start position:0%
don't think they can happen is the code
 

00:40:09.750 --> 00:40:11.360 align:start position:0%
don't think they can happen is the code
more<00:40:09.930><c> readable</c><00:40:09.960><c> even</c><00:40:10.650><c> if</c><00:40:10.740><c> it's</c><00:40:11.040><c> gonna</c><00:40:11.190><c> be</c>

00:40:11.360 --> 00:40:11.370 align:start position:0%
more readable even if it's gonna be
 

00:40:11.370 --> 00:40:12.740 align:start position:0%
more readable even if it's gonna be
guaranteed<00:40:11.730><c> it's</c><00:40:11.880><c> nice</c><00:40:12.030><c> for</c><00:40:12.330><c> a</c><00:40:12.390><c> read</c><00:40:12.600><c> really</c>

00:40:12.740 --> 00:40:12.750 align:start position:0%
guaranteed it's nice for a read really
 

00:40:12.750 --> 00:40:14.390 align:start position:0%
guaranteed it's nice for a read really
point<00:40:13.020><c> of</c><00:40:13.080><c> view</c><00:40:13.170><c> just</c><00:40:13.200><c> scroll</c><00:40:13.800><c> up</c><00:40:13.950><c> a</c><00:40:13.980><c> bit</c><00:40:14.190><c> so</c><00:40:14.310><c> we</c>

00:40:14.390 --> 00:40:14.400 align:start position:0%
point of view just scroll up a bit so we
 

00:40:14.400 --> 00:40:17.480 align:start position:0%
point of view just scroll up a bit so we
see<00:40:14.580><c> where</c><00:40:14.760><c> it's</c><00:40:14.910><c> called</c><00:40:15.150><c> the</c><00:40:15.390><c> deposits</c><00:40:16.490><c> so</c>

00:40:17.480 --> 00:40:17.490 align:start position:0%
see where it's called the deposits so
 

00:40:17.490 --> 00:40:19.070 align:start position:0%
see where it's called the deposits so
there's<00:40:17.670><c> one</c><00:40:17.790><c> a</c><00:40:17.820><c> deposit</c><00:40:18.300><c> jobs</c><00:40:18.510><c> take</c><00:40:18.750><c> as</c><00:40:18.930><c> well</c>

00:40:19.070 --> 00:40:19.080 align:start position:0%
there's one a deposit jobs take as well
 

00:40:19.080 --> 00:40:21.170 align:start position:0%
there's one a deposit jobs take as well
yeah<00:40:19.950><c> it's</c><00:40:20.160><c> called</c><00:40:20.310><c> a</c><00:40:20.400><c> few</c><00:40:20.550><c> times</c><00:40:20.580><c> so</c><00:40:21.090><c> that</c>

00:40:21.170 --> 00:40:21.180 align:start position:0%
yeah it's called a few times so that
 

00:40:21.180 --> 00:40:23.390 align:start position:0%
yeah it's called a few times so that
calls<00:40:21.540><c> deposit</c><00:40:22.110><c> but</c><00:40:22.380><c> required</c><00:40:22.740><c> stake</c><00:40:23.100><c> there</c>

00:40:23.390 --> 00:40:23.400 align:start position:0%
calls deposit but required stake there
 

00:40:23.400 --> 00:40:25.930 align:start position:0%
calls deposit but required stake there
comes<00:40:23.670><c> from</c><00:40:23.850><c> public</c><00:40:24.810><c> as</c><00:40:25.200><c> state</c><00:40:25.800><c> variable</c>

00:40:25.930 --> 00:40:25.940 align:start position:0%
comes from public as state variable
 

00:40:25.940 --> 00:40:32.830 align:start position:0%
comes from public as state variable
contract<00:40:30.440><c> and</c><00:40:31.440><c> I</c><00:40:31.530><c> guess</c><00:40:31.680><c> that's</c><00:40:31.920><c> the</c><00:40:32.040><c> only</c><00:40:32.280><c> one</c>

00:40:32.830 --> 00:40:32.840 align:start position:0%
contract and I guess that's the only one
 

00:40:32.840 --> 00:40:36.350 align:start position:0%
contract and I guess that's the only one
there<00:40:33.840><c> as</c><00:40:34.080><c> well</c><00:40:34.290><c> it</c><00:40:34.800><c> was</c><00:40:34.920><c> required</c><00:40:35.360><c> several</c>

00:40:36.350 --> 00:40:36.360 align:start position:0%
there as well it was required several
 

00:40:36.360 --> 00:40:38.060 align:start position:0%
there as well it was required several
calls<00:40:36.540><c> to</c><00:40:36.660><c> it</c><00:40:36.840><c> but</c><00:40:36.960><c> an</c><00:40:37.050><c> HS</c><00:40:37.350><c> I</c><00:40:37.650><c> think</c><00:40:37.830><c> it</c><00:40:37.920><c> comes</c>

00:40:38.060 --> 00:40:38.070 align:start position:0%
calls to it but an HS I think it comes
 

00:40:38.070 --> 00:40:40.820 align:start position:0%
calls to it but an HS I think it comes
from<00:40:38.190><c> a</c><00:40:38.340><c> state</c><00:40:38.550><c> variable</c><00:40:38.760><c> yeah</c><00:40:39.480><c> yeah</c><00:40:40.320><c> given</c>

00:40:40.820 --> 00:40:40.830 align:start position:0%
from a state variable yeah yeah given
 

00:40:40.830 --> 00:40:43.370 align:start position:0%
from a state variable yeah yeah given
the<00:40:40.920><c> context</c><00:40:41.430><c> that's</c><00:40:41.670><c> fine</c><00:40:42.000><c> but</c><00:40:42.390><c> it's</c><00:40:43.170><c> not</c>

00:40:43.370 --> 00:40:43.380 align:start position:0%
the context that's fine but it's not
 

00:40:43.380 --> 00:40:46.010 align:start position:0%
the context that's fine but it's not
robust<00:40:43.800><c> yeah</c><00:40:44.400><c> yeah</c><00:40:44.670><c> and</c><00:40:44.880><c> I</c><00:40:44.940><c> think</c><00:40:45.150><c> this</c><00:40:45.870><c> is</c>

00:40:46.010 --> 00:40:46.020 align:start position:0%
robust yeah yeah and I think this is
 

00:40:46.020 --> 00:40:48.170 align:start position:0%
robust yeah yeah and I think this is
also<00:40:46.440><c> another</c><00:40:46.710><c> good</c><00:40:46.920><c> point</c><00:40:47.070><c> I</c><00:40:47.310><c> always</c><00:40:47.730><c> sort</c><00:40:48.090><c> of</c>

00:40:48.170 --> 00:40:48.180 align:start position:0%
also another good point I always sort of
 

00:40:48.180 --> 00:40:50.930 align:start position:0%
also another good point I always sort of
suggest<00:40:48.570><c> that</c><00:40:48.960><c> if</c><00:40:49.260><c> you</c><00:40:49.680><c> have</c><00:40:49.940><c> multiple</c>

00:40:50.930 --> 00:40:50.940 align:start position:0%
suggest that if you have multiple
 

00:40:50.940 --> 00:40:53.270 align:start position:0%
suggest that if you have multiple
functions<00:40:51.570><c> right</c><00:40:52.020><c> calling</c><00:40:52.680><c> a</c><00:40:52.860><c> lower-level</c>

00:40:53.270 --> 00:40:53.280 align:start position:0%
functions right calling a lower-level
 

00:40:53.280 --> 00:40:55.250 align:start position:0%
functions right calling a lower-level
function<00:40:54.030><c> or</c><00:40:54.240><c> like</c><00:40:54.390><c> an</c><00:40:54.480><c> internal</c><00:40:54.750><c> function</c>

00:40:55.250 --> 00:40:55.260 align:start position:0%
function or like an internal function
 

00:40:55.260 --> 00:40:59.210 align:start position:0%
function or like an internal function
and<00:40:55.550><c> there</c><00:40:56.550><c> is</c><00:40:56.670><c> some</c><00:40:56.940><c> a</c><00:40:57.410><c> security</c><00:40:58.410><c> issue</c><00:40:58.800><c> that</c>

00:40:59.210 --> 00:40:59.220 align:start position:0%
and there is some a security issue that
 

00:40:59.220 --> 00:41:01.850 align:start position:0%
and there is some a security issue that
could<00:40:59.460><c> arise</c><00:40:59.700><c> if</c><00:41:00.300><c> those</c><00:41:00.660><c> wrapping</c><00:41:01.380><c> functions</c>

00:41:01.850 --> 00:41:01.860 align:start position:0%
could arise if those wrapping functions
 

00:41:01.860 --> 00:41:03.650 align:start position:0%
could arise if those wrapping functions
do<00:41:02.070><c> not</c><00:41:02.100><c> do</c><00:41:02.490><c> a</c><00:41:02.520><c> performance</c><00:41:02.940><c> or</c><00:41:03.180><c> an</c><00:41:03.240><c> action</c><00:41:03.510><c> in</c>

00:41:03.650 --> 00:41:03.660 align:start position:0%
do not do a performance or an action in
 

00:41:03.660 --> 00:41:05.510 align:start position:0%
do not do a performance or an action in
this<00:41:03.780><c> case</c><00:41:04.020><c> making</c><00:41:04.620><c> sure</c><00:41:04.740><c> that</c><00:41:04.980><c> the</c><00:41:05.100><c> allowance</c>

00:41:05.510 --> 00:41:05.520 align:start position:0%
this case making sure that the allowance
 

00:41:05.520 --> 00:41:08.390 align:start position:0%
this case making sure that the allowance
is<00:41:05.700><c> within</c><00:41:06.660><c> a</c><00:41:06.780><c> certain</c><00:41:06.810><c> value</c><00:41:07.080><c> then</c><00:41:07.830><c> you</c>

00:41:08.390 --> 00:41:08.400 align:start position:0%
is within a certain value then you
 

00:41:08.400 --> 00:41:11.720 align:start position:0%
is within a certain value then you
should<00:41:08.580><c> absolutely</c><00:41:09.150><c> move</c><00:41:10.160><c> the</c><00:41:11.160><c> track</c><00:41:11.460><c> or</c><00:41:11.700><c> the</c>

00:41:11.720 --> 00:41:11.730 align:start position:0%
should absolutely move the track or the
 

00:41:11.730 --> 00:41:14.060 align:start position:0%
should absolutely move the track or the
constraint<00:41:12.180><c> to</c><00:41:12.390><c> the</c><00:41:12.870><c> shared</c><00:41:13.500><c> function</c><00:41:13.890><c> right</c>

00:41:14.060 --> 00:41:14.070 align:start position:0%
constraint to the shared function right
 

00:41:14.070 --> 00:41:16.930 align:start position:0%
constraint to the shared function right
so<00:41:14.400><c> in</c><00:41:14.790><c> here</c><00:41:15.180><c> for</c><00:41:15.360><c> example</c><00:41:15.720><c> like</c><00:41:15.870><c> you</c><00:41:16.110><c> know</c><00:41:16.530><c> buy</c>

00:41:16.930 --> 00:41:16.940 align:start position:0%
so in here for example like you know buy
 

00:41:16.940 --> 00:41:22.430 align:start position:0%
so in here for example like you know buy
buy<00:41:18.770><c> buy</c><00:41:19.770><c> work</c><00:41:20.190><c> wait</c><00:41:20.570><c> by</c><00:41:21.570><c> you</c><00:41:21.990><c> know</c><00:41:22.080><c> putting</c>

00:41:22.430 --> 00:41:22.440 align:start position:0%
buy buy work wait by you know putting
 

00:41:22.440 --> 00:41:27.140 align:start position:0%
buy buy work wait by you know putting
safe<00:41:22.740><c> math</c><00:41:22.980><c> here</c><00:41:23.570><c> you</c><00:41:24.570><c> you</c><00:41:25.490><c> take</c><00:41:26.490><c> away</c><00:41:26.730><c> an</c>

00:41:27.140 --> 00:41:27.150 align:start position:0%
safe math here you you take away an
 

00:41:27.150 --> 00:41:29.300 align:start position:0%
safe math here you you take away an
overflow<00:41:27.630><c> vulnerability</c><00:41:27.900><c> from</c><00:41:28.590><c> any</c><00:41:28.860><c> function</c>

00:41:29.300 --> 00:41:29.310 align:start position:0%
overflow vulnerability from any function
 

00:41:29.310 --> 00:41:30.950 align:start position:0%
overflow vulnerability from any function
that<00:41:29.400><c> uses</c><00:41:29.520><c> this</c><00:41:29.790><c> function</c><00:41:30.210><c> and</c><00:41:30.360><c> so</c><00:41:30.480><c> the</c>

00:41:30.950 --> 00:41:30.960 align:start position:0%
that uses this function and so the
 

00:41:30.960 --> 00:41:33.170 align:start position:0%
that uses this function and so the
people<00:41:31.140><c> you</c><00:41:31.830><c> know</c><00:41:31.920><c> when</c><00:41:32.280><c> you're</c><00:41:32.460><c> extending</c><00:41:32.940><c> in</c>

00:41:33.170 --> 00:41:33.180 align:start position:0%
people you know when you're extending in
 

00:41:33.180 --> 00:41:34.340 align:start position:0%
people you know when you're extending in
the<00:41:33.240><c> future</c><00:41:33.540><c> when</c><00:41:33.720><c> people</c><00:41:34.020><c> are</c><00:41:34.110><c> billing</c>

00:41:34.340 --> 00:41:34.350 align:start position:0%
the future when people are billing
 

00:41:34.350 --> 00:41:35.990 align:start position:0%
the future when people are billing
against<00:41:34.620><c> your</c><00:41:34.710><c> API</c><00:41:34.950><c> they</c><00:41:35.580><c> don't</c><00:41:35.730><c> have</c><00:41:35.820><c> to</c><00:41:35.910><c> have</c>

00:41:35.990 --> 00:41:36.000 align:start position:0%
against your API they don't have to have
 

00:41:36.000 --> 00:41:37.760 align:start position:0%
against your API they don't have to have
the<00:41:36.090><c> cognate</c><00:41:36.450><c> overhead</c><00:41:36.840><c> of</c><00:41:36.990><c> or</c><00:41:37.170><c> oh</c><00:41:37.380><c> this</c>

00:41:37.760 --> 00:41:37.770 align:start position:0%
the cognate overhead of or oh this
 

00:41:37.770 --> 00:41:39.170 align:start position:0%
the cognate overhead of or oh this
function<00:41:38.100><c> is</c><00:41:38.220><c> vulnerable</c><00:41:38.640><c> to</c><00:41:38.700><c> overflows</c>

00:41:39.170 --> 00:41:39.180 align:start position:0%
function is vulnerable to overflows
 

00:41:39.180 --> 00:41:40.940 align:start position:0%
function is vulnerable to overflows
right<00:41:39.480><c> so</c><00:41:39.840><c> if</c><00:41:39.990><c> there's</c><00:41:40.170><c> if</c><00:41:40.380><c> there's</c><00:41:40.650><c> a</c>

00:41:40.940 --> 00:41:40.950 align:start position:0%
right so if there's if there's a
 

00:41:40.950 --> 00:41:44.180 align:start position:0%
right so if there's if there's a
mitigation<00:41:41.670><c> that</c><00:41:42.180><c> you</c><00:41:42.330><c> can</c><00:41:42.630><c> build</c><00:41:43.590><c> in</c><00:41:43.800><c> that's</c>

00:41:44.180 --> 00:41:44.190 align:start position:0%
mitigation that you can build in that's
 

00:41:44.190 --> 00:41:46.370 align:start position:0%
mitigation that you can build in that's
you<00:41:44.760><c> know</c><00:41:44.880><c> the</c><00:41:45.540><c> where</c><00:41:45.720><c> there's</c><00:41:46.110><c> an</c><00:41:46.200><c> issue</c>

00:41:46.370 --> 00:41:46.380 align:start position:0%
you know the where there's an issue
 

00:41:46.380 --> 00:41:49.580 align:start position:0%
you know the where there's an issue
that's<00:41:47.180><c> suffered</c><00:41:48.180><c> that</c><00:41:48.450><c> multiple</c><00:41:49.230><c> functions</c>

00:41:49.580 --> 00:41:49.590 align:start position:0%
that's suffered that multiple functions
 

00:41:49.590 --> 00:41:52.640 align:start position:0%
that's suffered that multiple functions
may<00:41:49.740><c> suffer</c><00:41:50.070><c> always</c><00:41:50.700><c> put</c><00:41:50.940><c> that</c><00:41:51.440><c> mitigation</c><00:41:52.440><c> in</c>

00:41:52.640 --> 00:41:52.650 align:start position:0%
may suffer always put that mitigation in
 

00:41:52.650 --> 00:41:57.890 align:start position:0%
may suffer always put that mitigation in
the<00:41:53.340><c> most</c><00:41:54.270><c> deep</c><00:41:54.720><c> function</c><00:41:55.440><c> call</c><00:41:56.900><c> another</c>

00:41:57.890 --> 00:41:57.900 align:start position:0%
the most deep function call another
 

00:41:57.900 --> 00:42:00.140 align:start position:0%
the most deep function call another
question<00:41:58.320><c> there's</c><00:41:58.980><c> a</c><00:41:59.070><c> function</c><00:41:59.670><c> a</c><00:41:59.730><c> a</c><00:41:59.760><c> select</c>

00:42:00.140 --> 00:42:00.150 align:start position:0%
question there's a function a a select
 

00:42:00.150 --> 00:42:02.000 align:start position:0%
question there's a function a a select
work<00:42:00.390><c> or</c><00:42:00.600><c> I</c><00:42:00.630><c> assume</c><00:42:00.960><c> the</c><00:42:01.140><c> goal</c><00:42:01.500><c> is</c><00:42:01.710><c> that</c><00:42:01.860><c> that</c>

00:42:02.000 --> 00:42:02.010 align:start position:0%
work or I assume the goal is that that
 

00:42:02.010 --> 00:42:05.720 align:start position:0%
work or I assume the goal is that that
gets<00:42:02.190><c> called</c><00:42:02.400><c> off</c><00:42:02.520><c> chain</c><00:42:03.860><c> the</c><00:42:04.860><c> select</c><00:42:05.250><c> worker</c>

00:42:05.720 --> 00:42:05.730 align:start position:0%
gets called off chain the select worker
 

00:42:05.730 --> 00:42:08.230 align:start position:0%
gets called off chain the select worker
function<00:42:06.270><c> does</c><00:42:06.990><c> that</c><00:42:07.140><c> get</c><00:42:07.320><c> called</c><00:42:07.530><c> off</c><00:42:07.710><c> chain</c>

00:42:08.230 --> 00:42:08.240 align:start position:0%
function does that get called off chain
 

00:42:08.240 --> 00:42:10.580 align:start position:0%
function does that get called off chain
no<00:42:09.240><c> it</c><00:42:09.390><c> does</c><00:42:09.570><c> get</c><00:42:09.750><c> called</c><00:42:09.990><c> on</c>

00:42:10.580 --> 00:42:10.590 align:start position:0%
no it does get called on
 

00:42:10.590 --> 00:42:12.110 align:start position:0%
no it does get called on
by<00:42:10.950><c> something</c><00:42:11.250><c> else</c><00:42:11.490><c> that</c><00:42:11.640><c> supplies</c><00:42:11.940><c> the</c>

00:42:12.110 --> 00:42:12.120 align:start position:0%
by something else that supplies the
 

00:42:12.120 --> 00:42:15.440 align:start position:0%
by something else that supplies the
entropy<00:42:12.360><c> okay</c><00:42:13.200><c> by</c><00:42:13.470><c> a</c><00:42:13.550><c> another</c><00:42:14.550><c> smart</c><00:42:14.940><c> contract</c>

00:42:15.440 --> 00:42:15.450 align:start position:0%
entropy okay by a another smart contract
 

00:42:15.450 --> 00:42:18.400 align:start position:0%
entropy okay by a another smart contract
then<00:42:15.690><c> essentially</c><00:42:16.650><c> the</c><00:42:16.830><c> job</c><00:42:17.040><c> manager</c><00:42:17.310><c> right</c>

00:42:18.400 --> 00:42:18.410 align:start position:0%
then essentially the job manager right
 

00:42:18.410 --> 00:42:20.540 align:start position:0%
then essentially the job manager right
one<00:42:19.410><c> thing</c><00:42:19.590><c> to</c><00:42:19.680><c> bear</c><00:42:19.800><c> in</c><00:42:19.860><c> mind</c><00:42:20.040><c> there</c><00:42:20.220><c> is</c><00:42:20.370><c> you</c>

00:42:20.540 --> 00:42:20.550 align:start position:0%
one thing to bear in mind there is you
 

00:42:20.550 --> 00:42:22.670 align:start position:0%
one thing to bear in mind there is you
may<00:42:20.760><c> not</c><00:42:20.940><c> be</c><00:42:21.180><c> selecting</c><00:42:21.810><c> uniformly</c><00:42:22.530><c> at</c><00:42:22.650><c> random</c>

00:42:22.670 --> 00:42:22.680 align:start position:0%
may not be selecting uniformly at random
 

00:42:22.680 --> 00:42:25.070 align:start position:0%
may not be selecting uniformly at random
because<00:42:23.430><c> of</c><00:42:23.580><c> your</c><00:42:23.820><c> range</c><00:42:24.330><c> the</c><00:42:24.660><c> range</c><00:42:24.690><c> of</c><00:42:24.990><c> your</c>

00:42:25.070 --> 00:42:25.080 align:start position:0%
because of your range the range of your
 

00:42:25.080 --> 00:42:28.100 align:start position:0%
because of your range the range of your
random<00:42:25.350><c> values</c><00:42:25.710><c> is</c><00:42:25.920><c> modulo</c><00:42:26.670><c> of</c><00:42:26.880><c> the</c><00:42:27.150><c> size</c><00:42:27.750><c> so</c>

00:42:28.100 --> 00:42:28.110 align:start position:0%
random values is modulo of the size so
 

00:42:28.110 --> 00:42:30.320 align:start position:0%
random values is modulo of the size so
probably<00:42:29.100><c> a</c><00:42:29.220><c> better</c><00:42:29.460><c> approach</c><00:42:29.850><c> would</c><00:42:30.150><c> be</c><00:42:30.180><c> to</c>

00:42:30.320 --> 00:42:30.330 align:start position:0%
probably a better approach would be to
 

00:42:30.330 --> 00:42:32.660 align:start position:0%
probably a better approach would be to
expose<00:42:30.930><c> the</c><00:42:31.170><c> number</c><00:42:31.440><c> of</c><00:42:31.530><c> stake</c><00:42:31.770><c> is</c><00:42:32.010><c> expose</c><00:42:32.640><c> a</c>

00:42:32.660 --> 00:42:32.670 align:start position:0%
expose the number of stake is expose a
 

00:42:32.670 --> 00:42:34.490 align:start position:0%
expose the number of stake is expose a
way<00:42:32.850><c> to</c><00:42:32.910><c> index</c><00:42:33.240><c> the</c><00:42:33.450><c> stagers</c><00:42:33.870><c> and</c><00:42:34.140><c> then</c><00:42:34.380><c> let</c>

00:42:34.490 --> 00:42:34.500 align:start position:0%
way to index the stagers and then let
 

00:42:34.500 --> 00:42:37.400 align:start position:0%
way to index the stagers and then let
the<00:42:34.650><c> caller</c><00:42:34.860><c> figure</c><00:42:35.700><c> out</c><00:42:35.850><c> how</c><00:42:36.090><c> to</c><00:42:36.410><c> select</c>

00:42:37.400 --> 00:42:37.410 align:start position:0%
the caller figure out how to select
 

00:42:37.410 --> 00:42:39.800 align:start position:0%
the caller figure out how to select
uniformly<00:42:37.980><c> at</c><00:42:38.130><c> random</c><00:42:38.240><c> because</c><00:42:39.240><c> this</c><00:42:39.480><c> hides</c>

00:42:39.800 --> 00:42:39.810 align:start position:0%
uniformly at random because this hides
 

00:42:39.810 --> 00:42:41.840 align:start position:0%
uniformly at random because this hides
the<00:42:40.110><c> fact</c><00:42:40.290><c> that</c><00:42:40.500><c> it's</c><00:42:40.740><c> doing</c><00:42:41.040><c> modulo</c><00:42:41.460><c> and</c><00:42:41.790><c> you</c>

00:42:41.840 --> 00:42:41.850 align:start position:0%
the fact that it's doing modulo and you
 

00:42:41.850 --> 00:42:44.120 align:start position:0%
the fact that it's doing modulo and you
think<00:42:42.120><c> it's</c><00:42:42.300><c> just</c><00:42:42.630><c> you</c><00:42:43.080><c> know</c><00:42:43.170><c> magically</c><00:42:43.950><c> gets</c>

00:42:44.120 --> 00:42:44.130 align:start position:0%
think it's just you know magically gets
 

00:42:44.130 --> 00:42:45.860 align:start position:0%
think it's just you know magically gets
an<00:42:44.250><c> even</c><00:42:44.340><c> distribution</c><00:42:44.700><c> if</c><00:42:45.420><c> you</c><00:42:45.570><c> google</c>

00:42:45.860 --> 00:42:45.870 align:start position:0%
an even distribution if you google
 

00:42:45.870 --> 00:42:47.870 align:start position:0%
an even distribution if you google
modulo<00:42:46.260><c> bias</c><00:42:46.530><c> you'll</c><00:42:46.800><c> find</c><00:42:47.040><c> a</c><00:42:47.220><c> nice</c><00:42:47.400><c> concise</c>

00:42:47.870 --> 00:42:47.880 align:start position:0%
modulo bias you'll find a nice concise
 

00:42:47.880 --> 00:42:50.750 align:start position:0%
modulo bias you'll find a nice concise
way<00:42:48.180><c> to</c><00:42:48.240><c> take</c><00:42:49.200><c> the</c><00:42:49.320><c> backs</c><00:42:49.530><c> minus</c><00:42:50.040><c> the</c><00:42:50.310><c> modulo</c>

00:42:50.750 --> 00:42:50.760 align:start position:0%
way to take the backs minus the modulo
 

00:42:50.760 --> 00:42:53.660 align:start position:0%
way to take the backs minus the modulo
minus<00:42:51.120><c> the</c><00:42:51.330><c> size</c><00:42:51.620><c> it's</c><00:42:52.620><c> like</c><00:42:52.770><c> a</c><00:42:53.010><c> little</c><00:42:53.490><c> more</c>

00:42:53.660 --> 00:42:53.670 align:start position:0%
minus the size it's like a little more
 

00:42:53.670 --> 00:42:55.610 align:start position:0%
minus the size it's like a little more
complicated<00:42:54.030><c> but</c><00:42:54.090><c> you</c><00:42:54.150><c> you</c><00:42:54.990><c> defeat</c><00:42:55.290><c> modulo</c>

00:42:55.610 --> 00:42:55.620 align:start position:0%
complicated but you you defeat modulo
 

00:42:55.620 --> 00:42:57.740 align:start position:0%
complicated but you you defeat modulo
bias<00:42:55.860><c> and</c><00:42:56.730><c> of</c><00:42:56.850><c> course</c><00:42:57.060><c> if</c><00:42:57.210><c> you're</c><00:42:57.360><c> doing</c><00:42:57.390><c> the</c>

00:42:57.740 --> 00:42:57.750 align:start position:0%
bias and of course if you're doing the
 

00:42:57.750 --> 00:43:01.130 align:start position:0%
bias and of course if you're doing the
chicks<00:42:58.290><c> on</c><00:42:58.890><c> chain</c><00:42:59.310><c> doing</c><00:43:00.150><c> the</c><00:43:00.270><c> pseudo-random</c>

00:43:01.130 --> 00:43:01.140 align:start position:0%
chicks on chain doing the pseudo-random
 

00:43:01.140 --> 00:43:02.780 align:start position:0%
chicks on chain doing the pseudo-random
generation<00:43:01.740><c> on</c><00:43:01.860><c> chain</c><00:43:02.130><c> and</c><00:43:02.370><c> all</c><00:43:02.460><c> the</c><00:43:02.610><c> usual</c>

00:43:02.780 --> 00:43:02.790 align:start position:0%
generation on chain and all the usual
 

00:43:02.790 --> 00:43:07.940 align:start position:0%
generation on chain and all the usual
caveats<00:43:03.210><c> about</c><00:43:05.480><c> apply</c><00:43:06.480><c> and</c><00:43:06.900><c> yeah</c><00:43:07.350><c> and</c><00:43:07.650><c> this</c><00:43:07.740><c> is</c>

00:43:07.940 --> 00:43:07.950 align:start position:0%
caveats about apply and yeah and this is
 

00:43:07.950 --> 00:43:10.400 align:start position:0%
caveats about apply and yeah and this is
also<00:43:08.460><c> vulnerable</c><00:43:09.000><c> to</c><00:43:09.420><c> a</c><00:43:09.540><c> front</c><00:43:09.870><c> running</c><00:43:10.080><c> if</c>

00:43:10.400 --> 00:43:10.410 align:start position:0%
also vulnerable to a front running if
 

00:43:10.410 --> 00:43:13.640 align:start position:0%
also vulnerable to a front running if
you<00:43:10.500><c> can</c><00:43:11.240><c> you</c><00:43:12.240><c> know</c><00:43:12.270><c> increase</c><00:43:12.750><c> the</c><00:43:12.930><c> length</c><00:43:13.350><c> of</c>

00:43:13.640 --> 00:43:13.650 align:start position:0%
you can you know increase the length of
 

00:43:13.650 --> 00:43:15.160 align:start position:0%
you can you know increase the length of
the<00:43:14.280><c> stagers</c>

00:43:15.160 --> 00:43:15.170 align:start position:0%
the stagers
 

00:43:15.170 --> 00:43:18.140 align:start position:0%
the stagers
before<00:43:16.170><c> that</c><00:43:16.500><c> select</c><00:43:17.190><c> worker</c><00:43:17.430><c> gets</c><00:43:17.820><c> a</c><00:43:17.910><c> called</c>

00:43:18.140 --> 00:43:18.150 align:start position:0%
before that select worker gets a called
 

00:43:18.150 --> 00:43:20.630 align:start position:0%
before that select worker gets a called
yes<00:43:18.600><c> so</c><00:43:18.840><c> if</c><00:43:19.380><c> you</c><00:43:19.530><c> are</c><00:43:19.650><c> off</c><00:43:19.800><c> by</c><00:43:20.010><c> one</c><00:43:20.040><c> from</c><00:43:20.490><c> being</c>

00:43:20.630 --> 00:43:20.640 align:start position:0%
yes so if you are off by one from being
 

00:43:20.640 --> 00:43:24.650 align:start position:0%
yes so if you are off by one from being
chosen<00:43:20.910><c> yeah</c><00:43:21.540><c> yeah</c><00:43:23.180><c> so</c><00:43:24.180><c> I</c><00:43:24.210><c> have</c><00:43:24.450><c> a</c><00:43:24.510><c> question</c>

00:43:24.650 --> 00:43:24.660 align:start position:0%
chosen yeah yeah so I have a question
 

00:43:24.660 --> 00:43:28.010 align:start position:0%
chosen yeah yeah so I have a question
will<00:43:25.290><c> you</c><00:43:25.380><c> be</c><00:43:25.560><c> using</c><00:43:25.680><c> some</c><00:43:26.520><c> kyc</c><00:43:27.150><c> system</c><00:43:27.570><c> for</c>

00:43:28.010 --> 00:43:28.020 align:start position:0%
will you be using some kyc system for
 

00:43:28.020 --> 00:43:36.290 align:start position:0%
will you be using some kyc system for
the<00:43:28.110><c> workers</c><00:43:32.870><c> okay</c><00:43:33.870><c> it</c><00:43:34.680><c> depends</c><00:43:35.400><c> because</c><00:43:35.520><c> if</c>

00:43:36.290 --> 00:43:36.300 align:start position:0%
the workers okay it depends because if
 

00:43:36.300 --> 00:43:39.350 align:start position:0%
the workers okay it depends because if
you<00:43:36.540><c> won't</c><00:43:36.840><c> the</c><00:43:37.350><c> stake</c><00:43:37.590><c> limit</c><00:43:38.000><c> does</c><00:43:39.000><c> nothing</c>

00:43:39.350 --> 00:43:39.360 align:start position:0%
you won't the stake limit does nothing
 

00:43:39.360 --> 00:43:42.940 align:start position:0%
you won't the stake limit does nothing
it's<00:43:40.050><c> it's</c><00:43:40.410><c> not</c><00:43:40.650><c> the</c><00:43:41.450><c> steak</c><00:43:42.450><c> limit</c><00:43:42.720><c> you</c><00:43:42.810><c> know</c>

00:43:42.940 --> 00:43:42.950 align:start position:0%
it's it's not the steak limit you know
 

00:43:42.950 --> 00:43:45.920 align:start position:0%
it's it's not the steak limit you know
telling<00:43:43.950><c> me</c><00:43:44.040><c> the</c><00:43:44.130><c> maximum</c><00:43:44.250><c> steak</c><00:43:44.760><c> so</c><00:43:45.150><c> much</c><00:43:45.330><c> my</c>

00:43:45.920 --> 00:43:45.930 align:start position:0%
telling me the maximum steak so much my
 

00:43:45.930 --> 00:43:49.820 align:start position:0%
telling me the maximum steak so much my
chance<00:43:46.290><c> of</c><00:43:46.560><c> each</c><00:43:46.890><c> worker</c><00:43:47.160><c> can</c><00:43:48.030><c> be</c><00:43:48.180><c> get</c><00:43:48.830><c> like</c>

00:43:49.820 --> 00:43:49.830 align:start position:0%
chance of each worker can be get like
 

00:43:49.830 --> 00:43:52.340 align:start position:0%
chance of each worker can be get like
bypassed<00:43:50.760><c> by</c><00:43:51.120><c> just</c><00:43:51.660><c> registering</c><00:43:52.110><c> with</c>

00:43:52.340 --> 00:43:52.350 align:start position:0%
bypassed by just registering with
 

00:43:52.350 --> 00:43:55.220 align:start position:0%
bypassed by just registering with
multiple<00:43:53.010><c> addresses</c><00:43:53.900><c> inside</c><00:43:54.900><c> the</c><00:43:55.020><c> steak</c>

00:43:55.220 --> 00:43:55.230 align:start position:0%
multiple addresses inside the steak
 

00:43:55.230 --> 00:43:57.380 align:start position:0%
multiple addresses inside the steak
limit<00:43:55.530><c> so</c><00:43:56.160><c> it's</c><00:43:56.460><c> not</c><00:43:56.580><c> super</c><00:43:56.760><c> resistant</c>

00:43:57.380 --> 00:43:57.390 align:start position:0%
limit so it's not super resistant
 

00:43:57.390 --> 00:44:05.930 align:start position:0%
limit so it's not super resistant
without<00:43:57.660><c> a</c><00:43:57.690><c> kyc</c><00:43:58.260><c> system</c><00:43:58.650><c> right</c><00:44:04.550><c> it's</c><00:44:05.550><c> funny</c><00:44:05.730><c> we</c>

00:44:05.930 --> 00:44:05.940 align:start position:0%
without a kyc system right it's funny we
 

00:44:05.940 --> 00:44:07.490 align:start position:0%
without a kyc system right it's funny we
actually<00:44:06.270><c> explored</c><00:44:06.660><c> that</c><00:44:06.840><c> because</c><00:44:07.260><c> we</c><00:44:07.410><c> were</c>

00:44:07.490 --> 00:44:07.500 align:start position:0%
actually explored that because we were
 

00:44:07.500 --> 00:44:11.270 align:start position:0%
actually explored that because we were
considering<00:44:08.270><c> letting</c><00:44:09.270><c> people</c><00:44:09.890><c> have</c><00:44:10.890><c> a</c><00:44:10.920><c> lot</c><00:44:11.250><c> of</c>

00:44:11.270 --> 00:44:11.280 align:start position:0%
considering letting people have a lot of
 

00:44:11.280 --> 00:44:13.640 align:start position:0%
considering letting people have a lot of
steak<00:44:11.670><c> and</c><00:44:11.880><c> then</c><00:44:12.480><c> wait</c><00:44:12.810><c> the</c><00:44:13.260><c> workers</c>

00:44:13.640 --> 00:44:13.650 align:start position:0%
steak and then wait the workers
 

00:44:13.650 --> 00:44:14.990 align:start position:0%
steak and then wait the workers
proportionally<00:44:14.250><c> according</c><00:44:14.730><c> to</c><00:44:14.790><c> how</c><00:44:14.880><c> much</c>

00:44:14.990 --> 00:44:15.000 align:start position:0%
proportionally according to how much
 

00:44:15.000 --> 00:44:17.150 align:start position:0%
proportionally according to how much
steak<00:44:15.300><c> they</c><00:44:15.450><c> have</c><00:44:15.630><c> but</c><00:44:16.470><c> computationally</c>

00:44:17.150 --> 00:44:17.160 align:start position:0%
steak they have but computationally
 

00:44:17.160 --> 00:44:19.190 align:start position:0%
steak they have but computationally
that's<00:44:17.310><c> a</c><00:44:17.400><c> that's</c><00:44:17.760><c> not</c><00:44:18.120><c> that's</c><00:44:18.870><c> very</c>

00:44:19.190 --> 00:44:19.200 align:start position:0%
that's a that's not that's very
 

00:44:19.200 --> 00:44:21.320 align:start position:0%
that's a that's not that's very
challenging<00:44:19.650><c> because</c><00:44:19.880><c> basically</c><00:44:20.880><c> this</c><00:44:21.000><c> is</c><00:44:21.150><c> a</c>

00:44:21.320 --> 00:44:21.330 align:start position:0%
challenging because basically this is a
 

00:44:21.330 --> 00:44:24.410 align:start position:0%
challenging because basically this is a
one<00:44:21.630><c> for</c><00:44:22.170><c> all</c><00:44:22.260><c> the</c><00:44:22.290><c> operations</c><00:44:22.980><c> and</c>

00:44:24.410 --> 00:44:24.420 align:start position:0%
one for all the operations and
 

00:44:24.420 --> 00:44:26.900 align:start position:0%
one for all the operations and
best<00:44:24.630><c> to</c><00:44:24.839><c> Bo</c><00:44:25.019><c> n</c><00:44:25.349><c> depending</c><00:44:26.339><c> on</c><00:44:26.460><c> how</c><00:44:26.640><c> you</c><00:44:26.700><c> want</c>

00:44:26.900 --> 00:44:26.910 align:start position:0%
best to Bo n depending on how you want
 

00:44:26.910 --> 00:44:28.519 align:start position:0%
best to Bo n depending on how you want
to<00:44:26.940><c> balance</c><00:44:27.119><c> read</c><00:44:27.599><c> optimization</c><00:44:28.260><c> versus</c>

00:44:28.519 --> 00:44:28.529 align:start position:0%
to balance read optimization versus
 

00:44:28.529 --> 00:44:30.700 align:start position:0%
to balance read optimization versus
write<00:44:28.680><c> optimization</c><00:44:29.339><c> so</c><00:44:29.579><c> we</c><00:44:30.210><c> decided</c><00:44:30.660><c> that</c>

00:44:30.700 --> 00:44:30.710 align:start position:0%
write optimization so we decided that
 

00:44:30.710 --> 00:44:33.559 align:start position:0%
write optimization so we decided that
kyc<00:44:31.710><c> be</c><00:44:31.859><c> damned</c><00:44:32.069><c> I</c><00:44:32.279><c> guess</c><00:44:32.490><c> we</c><00:44:32.760><c> just</c><00:44:32.789><c> let</c><00:44:33.390><c> them</c>

00:44:33.559 --> 00:44:33.569 align:start position:0%
kyc be damned I guess we just let them
 

00:44:33.569 --> 00:44:36.319 align:start position:0%
kyc be damned I guess we just let them
if<00:44:33.779><c> they</c><00:44:33.990><c> have</c><00:44:34.289><c> a</c><00:44:34.680><c> million</c><00:44:35.430><c> they</c><00:44:35.880><c> can</c><00:44:36.089><c> stake</c>

00:44:36.319 --> 00:44:36.329 align:start position:0%
if they have a million they can stake
 

00:44:36.329 --> 00:44:38.660 align:start position:0%
if they have a million they can stake
that<00:44:36.510><c> many</c><00:44:36.720><c> addresses</c><00:44:36.900><c> so</c><00:44:37.769><c> but</c><00:44:38.190><c> it's</c><00:44:38.309><c> a</c><00:44:38.490><c> bit</c>

00:44:38.660 --> 00:44:38.670 align:start position:0%
that many addresses so but it's a bit
 

00:44:38.670 --> 00:44:39.799 align:start position:0%
that many addresses so but it's a bit
again<00:44:38.819><c> I</c><00:44:38.849><c> think</c><00:44:39.029><c> it's</c><00:44:39.210><c> kind</c><00:44:39.359><c> of</c><00:44:39.390><c> outside</c><00:44:39.690><c> the</c>

00:44:39.799 --> 00:44:39.809 align:start position:0%
again I think it's kind of outside the
 

00:44:39.809 --> 00:44:41.059 align:start position:0%
again I think it's kind of outside the
scope<00:44:39.990><c> of</c><00:44:40.079><c> this</c><00:44:40.200><c> it</c><00:44:40.380><c> depends</c><00:44:40.650><c> on</c><00:44:40.769><c> how</c><00:44:40.920><c> you</c><00:44:40.980><c> want</c>

00:44:41.059 --> 00:44:41.069 align:start position:0%
scope of this it depends on how you want
 

00:44:41.069 --> 00:44:42.769 align:start position:0%
scope of this it depends on how you want
to<00:44:41.220><c> use</c><00:44:41.279><c> it</c><00:44:41.549><c> but</c><00:44:41.970><c> you</c><00:44:42.150><c> you</c><00:44:42.359><c> bring</c><00:44:42.569><c> up</c><00:44:42.660><c> an</c>

00:44:42.769 --> 00:44:42.779 align:start position:0%
to use it but you you bring up an
 

00:44:42.779 --> 00:44:52.339 align:start position:0%
to use it but you you bring up an
excellent<00:44:42.839><c> point</c><00:44:43.140><c> I</c><00:44:43.440><c> think</c><00:44:43.500><c> I</c><00:44:51.019><c> mean</c><00:44:52.019><c> the</c><00:44:52.140><c> stake</c>

00:44:52.339 --> 00:44:52.349 align:start position:0%
excellent point I think I mean the stake
 

00:44:52.349 --> 00:44:54.259 align:start position:0%
excellent point I think I mean the stake
limit<00:44:52.650><c> is</c><00:44:53.069><c> the</c><00:44:53.339><c> question</c><00:44:53.609><c> was</c><00:44:53.730><c> wouldn't</c><00:44:54.150><c> it</c><00:44:54.210><c> be</c>

00:44:54.259 --> 00:44:54.269 align:start position:0%
limit is the question was wouldn't it be
 

00:44:54.269 --> 00:44:55.339 align:start position:0%
limit is the question was wouldn't it be
better<00:44:54.359><c> to</c><00:44:54.539><c> get</c><00:44:54.630><c> rid</c><00:44:54.690><c> of</c><00:44:54.839><c> the</c><00:44:54.930><c> stake</c><00:44:55.079><c> limit</c>

00:44:55.339 --> 00:44:55.349 align:start position:0%
better to get rid of the stake limit
 

00:44:55.349 --> 00:44:56.630 align:start position:0%
better to get rid of the stake limit
then<00:44:55.500><c> so</c><00:44:55.650><c> you</c><00:44:55.740><c> can</c><00:44:55.859><c> stake</c><00:44:56.190><c> as</c><00:44:56.279><c> much</c><00:44:56.430><c> as</c><00:44:56.549><c> you</c>

00:44:56.630 --> 00:44:56.640 align:start position:0%
then so you can stake as much as you
 

00:44:56.640 --> 00:44:58.339 align:start position:0%
then so you can stake as much as you
want<00:44:56.819><c> and</c><00:44:57.029><c> that's</c><00:44:57.450><c> still</c><00:44:57.750><c> an</c><00:44:57.869><c> open</c><00:44:58.049><c> question</c>

00:44:58.339 --> 00:44:58.349 align:start position:0%
want and that's still an open question
 

00:44:58.349 --> 00:44:59.599 align:start position:0%
want and that's still an open question
that<00:44:58.650><c> we've</c><00:44:58.740><c> been</c><00:44:58.859><c> talking</c><00:44:59.130><c> about</c><00:44:59.190><c> because</c>

00:44:59.599 --> 00:44:59.609 align:start position:0%
that we've been talking about because
 

00:44:59.609 --> 00:45:02.000 align:start position:0%
that we've been talking about because
really<00:45:00.329><c> if</c><00:45:00.660><c> you</c><00:45:00.839><c> can</c><00:45:01.019><c> just</c><00:45:01.200><c> only</c><00:45:01.380><c> do</c><00:45:01.619><c> one</c><00:45:01.799><c> job</c>

00:45:02.000 --> 00:45:02.010 align:start position:0%
really if you can just only do one job
 

00:45:02.010 --> 00:45:04.160 align:start position:0%
really if you can just only do one job
at<00:45:02.190><c> a</c><00:45:02.220><c> time</c><00:45:02.309><c> then</c><00:45:02.880><c> really</c><00:45:03.210><c> you</c><00:45:03.450><c> only</c><00:45:03.510><c> need</c><00:45:03.809><c> like</c>

00:45:04.160 --> 00:45:04.170 align:start position:0%
at a time then really you only need like
 

00:45:04.170 --> 00:45:04.940 align:start position:0%
at a time then really you only need like
the<00:45:04.319><c> job</c><00:45:04.500><c> stake</c>

00:45:04.940 --> 00:45:04.950 align:start position:0%
the job stake
 

00:45:04.950 --> 00:45:07.460 align:start position:0%
the job stake
amount<00:45:05.250><c> minimum</c><00:45:05.900><c> yeah</c><00:45:06.900><c> and</c><00:45:07.140><c> I</c><00:45:07.200><c> think</c><00:45:07.349><c> it's</c>

00:45:07.460 --> 00:45:07.470 align:start position:0%
amount minimum yeah and I think it's
 

00:45:07.470 --> 00:45:08.839 align:start position:0%
amount minimum yeah and I think it's
something<00:45:07.619><c> to</c><00:45:07.980><c> keep</c><00:45:08.069><c> in</c><00:45:08.220><c> mind</c><00:45:08.339><c> in</c><00:45:08.549><c> general</c>

00:45:08.839 --> 00:45:08.849 align:start position:0%
something to keep in mind in general
 

00:45:08.849 --> 00:45:09.680 align:start position:0%
something to keep in mind in general
when<00:45:08.970><c> you're</c><00:45:09.059><c> doing</c><00:45:09.240><c> these</c><00:45:09.359><c> sorts</c><00:45:09.569><c> of</c><00:45:09.630><c> things</c>

00:45:09.680 --> 00:45:09.690 align:start position:0%
when you're doing these sorts of things
 

00:45:09.690 --> 00:45:11.180 align:start position:0%
when you're doing these sorts of things
is<00:45:10.140><c> to</c><00:45:10.170><c> keep</c><00:45:10.410><c> in</c><00:45:10.589><c> mind</c><00:45:10.740><c> because</c><00:45:10.950><c> that's</c>

00:45:11.180 --> 00:45:11.190 align:start position:0%
is to keep in mind because that's
 

00:45:11.190 --> 00:45:13.069 align:start position:0%
is to keep in mind because that's
definitely<00:45:11.670><c> an</c><00:45:12.059><c> issue</c><00:45:12.240><c> like</c><00:45:12.510><c> wooden</c><00:45:12.869><c> people</c>

00:45:13.069 --> 00:45:13.079 align:start position:0%
definitely an issue like wooden people
 

00:45:13.079 --> 00:45:15.109 align:start position:0%
definitely an issue like wooden people
can<00:45:13.380><c> be</c><00:45:13.559><c> mole</c><00:45:13.799><c> when</c><00:45:14.369><c> many</c><00:45:14.640><c> people</c><00:45:15.029><c> could</c>

00:45:15.109 --> 00:45:15.119 align:start position:0%
can be mole when many people could
 

00:45:15.119 --> 00:45:17.299 align:start position:0%
can be mole when many people could
actually<00:45:15.269><c> be</c><00:45:15.450><c> one</c><00:45:15.660><c> actor</c><00:45:16.069><c> and</c><00:45:17.069><c> this</c><00:45:17.160><c> is</c><00:45:17.279><c> a</c>

00:45:17.299 --> 00:45:17.309 align:start position:0%
actually be one actor and this is a
 

00:45:17.309 --> 00:45:20.059 align:start position:0%
actually be one actor and this is a
pattern<00:45:17.519><c> we</c><00:45:17.789><c> do</c><00:45:17.910><c> see</c><00:45:18.059><c> a</c><00:45:18.089><c> lot</c><00:45:18.240><c> is</c><00:45:18.539><c> people</c><00:45:19.069><c> just</c>

00:45:20.059 --> 00:45:20.069 align:start position:0%
pattern we do see a lot is people just
 

00:45:20.069 --> 00:45:21.829 align:start position:0%
pattern we do see a lot is people just
trusting<00:45:20.519><c> no</c><00:45:20.700><c> no</c><00:45:20.819><c> one</c><00:45:21.119><c> address</c><00:45:21.450><c> means</c><00:45:21.630><c> one</c>

00:45:21.829 --> 00:45:21.839 align:start position:0%
trusting no no one address means one
 

00:45:21.839 --> 00:45:24.049 align:start position:0%
trusting no no one address means one
person<00:45:22.200><c> but</c><00:45:22.380><c> like</c><00:45:22.740><c> you</c><00:45:22.829><c> said</c><00:45:23.220><c> if</c><00:45:23.400><c> if</c><00:45:23.700><c> you</c><00:45:23.880><c> have</c>

00:45:24.049 --> 00:45:24.059 align:start position:0%
person but like you said if if you have
 

00:45:24.059 --> 00:45:25.910 align:start position:0%
person but like you said if if you have
a<00:45:24.089><c> million</c><00:45:24.329><c> addresses</c><00:45:24.539><c> and</c><00:45:25.019><c> there's</c><00:45:25.619><c> only</c><00:45:25.740><c> two</c>

00:45:25.910 --> 00:45:25.920 align:start position:0%
a million addresses and there's only two
 

00:45:25.920 --> 00:45:27.710 align:start position:0%
a million addresses and there's only two
other<00:45:25.980><c> workers</c><00:45:26.369><c> you</c><00:45:26.490><c> have</c><00:45:26.609><c> a</c><00:45:26.700><c> 1</c><00:45:27.180><c> million</c><00:45:27.450><c> out</c>

00:45:27.710 --> 00:45:27.720 align:start position:0%
other workers you have a 1 million out
 

00:45:27.720 --> 00:45:29.240 align:start position:0%
other workers you have a 1 million out
of<00:45:27.750><c> a</c><00:45:27.900><c> million</c><00:45:28.170><c> a</c><00:45:28.260><c> 2</c><00:45:28.410><c> chance</c><00:45:28.710><c> of</c><00:45:28.890><c> being</c><00:45:29.039><c> picked</c>

00:45:29.240 --> 00:45:29.250 align:start position:0%
of a million a 2 chance of being picked
 

00:45:29.250 --> 00:45:37.759 align:start position:0%
of a million a 2 chance of being picked
for<00:45:29.369><c> this</c><00:45:29.579><c> things</c><00:45:34.549><c> alright</c><00:45:35.549><c> should</c><00:45:36.359><c> we</c><00:45:36.650><c> so</c><00:45:37.650><c> we</c>

00:45:37.759 --> 00:45:37.769 align:start position:0%
for this things alright should we so we
 

00:45:37.769 --> 00:45:41.839 align:start position:0%
for this things alright should we so we
got<00:45:37.980><c> one</c><00:45:38.940><c> tiny</c><00:45:39.799><c> submission</c><00:45:40.799><c> the</c><00:45:41.279><c> wicked</c><00:45:41.640><c> we</c>

00:45:41.839 --> 00:45:41.849 align:start position:0%
got one tiny submission the wicked we
 

00:45:41.849 --> 00:45:44.180 align:start position:0%
got one tiny submission the wicked we
could<00:45:42.000><c> take</c><00:45:42.150><c> a</c><00:45:42.180><c> look</c><00:45:42.359><c> at</c><00:45:42.480><c> that</c><00:45:42.829><c> we</c><00:45:43.829><c> have</c><00:45:43.950><c> like</c>

00:45:44.180 --> 00:45:44.190 align:start position:0%
could take a look at that we have like
 

00:45:44.190 --> 00:45:45.470 align:start position:0%
could take a look at that we have like
10<00:45:44.490><c> minutes</c><00:45:44.519><c> left</c>

00:45:45.470 --> 00:45:45.480 align:start position:0%
10 minutes left
 

00:45:45.480 --> 00:45:50.089 align:start position:0%
10 minutes left
alternatively<00:45:46.470><c> we</c><00:45:46.619><c> could</c><00:45:46.769><c> just</c><00:45:48.950><c> talk</c><00:45:49.950><c> about</c>

00:45:50.089 --> 00:45:50.099 align:start position:0%
alternatively we could just talk about
 

00:45:50.099 --> 00:46:03.920 align:start position:0%
alternatively we could just talk about
our<00:45:50.250><c> favorite</c><00:45:50.940><c> piece</c><00:45:52.789><c> thanks</c><00:45:53.789><c> guys</c><00:46:02.000><c> yeah</c><00:46:03.000><c> this</c>

00:46:03.920 --> 00:46:03.930 align:start position:0%
our favorite piece thanks guys yeah this
 

00:46:03.930 --> 00:46:06.589 align:start position:0%
our favorite piece thanks guys yeah this
is<00:46:04.259><c> pretty</c><00:46:05.220><c> small</c><00:46:05.460><c> pretty</c><00:46:05.880><c> straightforward</c>

00:46:06.589 --> 00:46:06.599 align:start position:0%
is pretty small pretty straightforward
 

00:46:06.599 --> 00:46:09.200 align:start position:0%
is pretty small pretty straightforward
and<00:46:06.839><c> I</c><00:46:07.319><c> wanted</c><00:46:08.190><c> to</c><00:46:08.250><c> kind</c><00:46:08.490><c> of</c><00:46:08.670><c> kick</c><00:46:08.940><c> off</c><00:46:09.059><c> the</c>

00:46:09.200 --> 00:46:09.210 align:start position:0%
and I wanted to kind of kick off the
 

00:46:09.210 --> 00:46:11.390 align:start position:0%
and I wanted to kind of kick off the
discussion<00:46:09.329><c> I</c><00:46:09.900><c> mean</c><00:46:10.140><c> I</c><00:46:10.319><c> think</c><00:46:10.799><c> all</c><00:46:11.130><c> of</c><00:46:11.160><c> you</c>

00:46:11.390 --> 00:46:11.400 align:start position:0%
discussion I mean I think all of you
 

00:46:11.400 --> 00:46:14.480 align:start position:0%
discussion I mean I think all of you
will<00:46:11.609><c> immediately</c><00:46:11.880><c> see</c><00:46:12.150><c> what</c><00:46:12.539><c> I'm</c><00:46:12.720><c> getting</c><00:46:13.019><c> it</c>

00:46:14.480 --> 00:46:14.490 align:start position:0%
will immediately see what I'm getting it
 

00:46:14.490 --> 00:46:17.499 align:start position:0%
will immediately see what I'm getting it
[Music]

00:46:17.499 --> 00:46:17.509 align:start position:0%
[Music]
 

00:46:17.509 --> 00:46:24.589 align:start position:0%
[Music]
9:21<00:46:19.789><c> so</c><00:46:21.650><c> I</c><00:46:22.650><c> I</c><00:46:23.519><c> mean</c><00:46:23.789><c> given</c><00:46:24.059><c> that</c><00:46:24.210><c> there</c><00:46:24.390><c> was</c>

00:46:24.589 --> 00:46:24.599 align:start position:0%
9:21 so I I mean given that there was
 

00:46:24.599 --> 00:46:27.230 align:start position:0%
9:21 so I I mean given that there was
some<00:46:25.019><c> changes</c><00:46:25.559><c> in</c><00:46:25.710><c> the</c><00:46:26.250><c> new</c><00:46:26.519><c> open</c><00:46:26.910><c> Zeppelin</c>

00:46:27.230 --> 00:46:27.240 align:start position:0%
some changes in the new open Zeppelin
 

00:46:27.240 --> 00:46:29.539 align:start position:0%
some changes in the new open Zeppelin
version<00:46:27.539><c> 2</c><00:46:27.720><c> and</c><00:46:27.750><c> so</c><00:46:28.140><c> on</c><00:46:28.170><c> in</c><00:46:28.349><c> this</c><00:46:28.500><c> direction</c><00:46:29.369><c> I</c>

00:46:29.539 --> 00:46:29.549 align:start position:0%
version 2 and so on in this direction I
 

00:46:29.549 --> 00:46:31.900 align:start position:0%
version 2 and so on in this direction I
wanted<00:46:30.420><c> to</c><00:46:30.539><c> kind</c><00:46:30.779><c> of</c><00:46:30.900><c> kick</c><00:46:31.319><c> off</c><00:46:31.470><c> the</c>

00:46:31.900 --> 00:46:31.910 align:start position:0%
wanted to kind of kick off the
 

00:46:31.910 --> 00:46:35.170 align:start position:0%
wanted to kind of kick off the
discussion<00:46:32.910><c> towards</c><00:46:33.450><c> reentrant</c><00:46:34.319><c> see</c>

00:46:35.170 --> 00:46:35.180 align:start position:0%
discussion towards reentrant see
 

00:46:35.180 --> 00:46:37.329 align:start position:0%
discussion towards reentrant see
protections<00:46:35.599><c> and</c><00:46:35.750><c> so</c><00:46:35.900><c> on</c><00:46:36.020><c> and</c><00:46:36.200><c> what</c><00:46:36.950><c> all</c><00:46:37.160><c> you</c>

00:46:37.329 --> 00:46:37.339 align:start position:0%
protections and so on and what all you
 

00:46:37.339 --> 00:46:39.609 align:start position:0%
protections and so on and what all you
guys<00:46:37.400><c> think</c><00:46:38.300><c> about</c><00:46:38.359><c> that</c><00:46:38.540><c> given</c><00:46:39.380><c> that</c><00:46:39.500><c> you</c>

00:46:39.609 --> 00:46:39.619 align:start position:0%
guys think about that given that you
 

00:46:39.619 --> 00:46:41.079 align:start position:0%
guys think about that given that you
were<00:46:39.650><c> also</c><00:46:40.069><c> partially</c><00:46:40.490><c> in</c><00:46:40.550><c> Worcester</c><00:46:40.910><c> State</c>

00:46:41.079 --> 00:46:41.089 align:start position:0%
were also partially in Worcester State
 

00:46:41.089 --> 00:46:43.599 align:start position:0%
were also partially in Worcester State
and<00:46:41.300><c> so</c><00:46:41.420><c> on</c><00:46:41.540><c> yeah</c><00:46:42.079><c> so</c><00:46:42.710><c> I</c><00:46:42.740><c> think</c><00:46:42.859><c> the</c><00:46:43.309><c> first</c>

00:46:43.599 --> 00:46:43.609 align:start position:0%
and so on yeah so I think the first
 

00:46:43.609 --> 00:46:46.030 align:start position:0%
and so on yeah so I think the first
thing<00:46:43.700><c> is</c><00:46:44.030><c> that</c><00:46:44.059><c> this</c><00:46:44.569><c> contract</c><00:46:45.230><c> is</c><00:46:45.530><c> you</c><00:46:45.920><c> know</c>

00:46:46.030 --> 00:46:46.040 align:start position:0%
thing is that this contract is you know
 

00:46:46.040 --> 00:46:49.059 align:start position:0%
thing is that this contract is you know
like<00:46:46.369><c> just</c><00:46:47.329><c> generally</c><00:46:47.869><c> stop</c><00:46:48.500><c> doing</c><00:46:48.770><c> this</c>

00:46:49.059 --> 00:46:49.069 align:start position:0%
like just generally stop doing this
 

00:46:49.069 --> 00:46:50.559 align:start position:0%
like just generally stop doing this
you<00:46:49.160><c> know</c><00:46:49.250><c> don't</c><00:46:49.730><c> check</c><00:46:50.059><c> if</c><00:46:50.240><c> things</c><00:46:50.450><c> are</c>

00:46:50.559 --> 00:46:50.569 align:start position:0%
you know don't check if things are
 

00:46:50.569 --> 00:46:52.630 align:start position:0%
you know don't check if things are
contracts<00:46:51.079><c> there</c><00:46:51.349><c> is</c><00:46:51.440><c> no</c><00:46:51.589><c> way</c><00:46:51.770><c> to</c><00:46:51.800><c> there's</c><00:46:52.490><c> no</c>

00:46:52.630 --> 00:46:52.640 align:start position:0%
contracts there is no way to there's no
 

00:46:52.640 --> 00:46:54.309 align:start position:0%
contracts there is no way to there's no
way<00:46:52.760><c> to</c><00:46:52.819><c> do</c><00:46:53.000><c> this</c><00:46:53.180><c> on</c><00:46:53.540><c> a</c><00:46:53.599><c> theorem</c><00:46:54.050><c> that's</c>

00:46:54.309 --> 00:46:54.319 align:start position:0%
way to do this on a theorem that's
 

00:46:54.319 --> 00:46:56.040 align:start position:0%
way to do this on a theorem that's
foolproof

00:46:56.040 --> 00:46:56.050 align:start position:0%
foolproof
 

00:46:56.050 --> 00:47:01.690 align:start position:0%
foolproof
there<00:46:57.050><c> is</c><00:46:57.730><c> no</c><00:46:58.730><c> no</c><00:46:59.150><c> no</c><00:46:59.440><c> well</c><00:47:00.440><c> actually</c><00:47:00.770><c> you</c><00:47:01.520><c> can</c>

00:47:01.690 --> 00:47:01.700 align:start position:0%
there is no no no well actually you can
 

00:47:01.700 --> 00:47:03.250 align:start position:0%
there is no no no well actually you can
prove<00:47:01.880><c> that</c><00:47:02.059><c> it's</c><00:47:02.240><c> not</c><00:47:02.329><c> a</c><00:47:02.540><c> contract</c><00:47:03.109><c> by</c>

00:47:03.250 --> 00:47:03.260 align:start position:0%
prove that it's not a contract by
 

00:47:03.260 --> 00:47:04.569 align:start position:0%
prove that it's not a contract by
checking<00:47:03.530><c> that</c><00:47:03.650><c> the</c><00:47:03.859><c> message</c><00:47:04.160><c> that</c><00:47:04.190><c> sounder</c>

00:47:04.569 --> 00:47:04.579 align:start position:0%
checking that the message that sounder
 

00:47:04.579 --> 00:47:08.260 align:start position:0%
checking that the message that sounder
equals<00:47:04.880><c> origin</c><00:47:05.690><c> sure</c><00:47:06.380><c> but</c><00:47:06.710><c> you</c><00:47:07.460><c> cannot</c><00:47:07.910><c> prove</c>

00:47:08.260 --> 00:47:08.270 align:start position:0%
equals origin sure but you cannot prove
 

00:47:08.270 --> 00:47:10.870 align:start position:0%
equals origin sure but you cannot prove
that<00:47:08.630><c> it</c><00:47:08.900><c> is</c><00:47:09.710><c> a</c><00:47:09.770><c> contract</c><00:47:10.460><c> it's</c><00:47:10.550><c> like</c><00:47:10.730><c> when</c><00:47:10.819><c> the</c>

00:47:10.870 --> 00:47:10.880 align:start position:0%
that it is a contract it's like when the
 

00:47:10.880 --> 00:47:12.280 align:start position:0%
that it is a contract it's like when the
big<00:47:11.000><c> issues</c><00:47:11.240><c> is</c><00:47:11.270><c> current</c><00:47:11.660><c> factual</c><00:47:12.050><c> I</c><00:47:12.140><c> can</c>

00:47:12.280 --> 00:47:12.290 align:start position:0%
big issues is current factual I can
 

00:47:12.290 --> 00:47:14.230 align:start position:0%
big issues is current factual I can
compute<00:47:12.770><c> the</c><00:47:12.950><c> address</c><00:47:13.069><c> a</c><00:47:13.280><c> contract</c><00:47:13.760><c> will</c><00:47:14.000><c> live</c>

00:47:14.230 --> 00:47:14.240 align:start position:0%
compute the address a contract will live
 

00:47:14.240 --> 00:47:16.720 align:start position:0%
compute the address a contract will live
at<00:47:14.420><c> and</c><00:47:14.690><c> now</c><00:47:15.589><c> I</c><00:47:15.619><c> can</c><00:47:15.829><c> use</c><00:47:15.859><c> that</c><00:47:16.040><c> but</c><00:47:16.550><c> in</c><00:47:16.640><c> the</c>

00:47:16.720 --> 00:47:16.730 align:start position:0%
at and now I can use that but in the
 

00:47:16.730 --> 00:47:21.250 align:start position:0%
at and now I can use that but in the
future<00:47:16.940><c> becomes</c><00:47:17.420><c> a</c><00:47:17.540><c> contract</c><00:47:17.960><c> so</c><00:47:19.960><c> write</c><00:47:20.960><c> a</c><00:47:20.990><c> 50</c>

00:47:21.250 --> 00:47:21.260 align:start position:0%
future becomes a contract so write a 50
 

00:47:21.260 --> 00:47:24.520 align:start position:0%
future becomes a contract so write a 50
X<00:47:21.349><c> origins</c><00:47:21.770><c> equal</c><00:47:22.069><c> yes</c><00:47:22.309><c> and</c><00:47:23.089><c> but</c><00:47:24.050><c> I</c><00:47:24.109><c> think</c><00:47:24.410><c> in</c>

00:47:24.520 --> 00:47:24.530 align:start position:0%
X origins equal yes and but I think in
 

00:47:24.530 --> 00:47:26.620 align:start position:0%
X origins equal yes and but I think in
general<00:47:24.740><c> it's</c><00:47:25.190><c> it's</c><00:47:25.609><c> I</c><00:47:25.940><c> think</c><00:47:26.210><c> it's</c><00:47:26.540><c> an</c>

00:47:26.620 --> 00:47:26.630 align:start position:0%
general it's it's I think it's an
 

00:47:26.630 --> 00:47:28.210 align:start position:0%
general it's it's I think it's an
anti-pattern<00:47:26.960><c> because</c><00:47:27.470><c> we</c><00:47:27.589><c> want</c><00:47:27.800><c> to</c><00:47:27.829><c> build</c><00:47:28.010><c> a</c>

00:47:28.210 --> 00:47:28.220 align:start position:0%
anti-pattern because we want to build a
 

00:47:28.220 --> 00:47:30.220 align:start position:0%
anti-pattern because we want to build a
system<00:47:28.369><c> that</c><00:47:28.730><c> is</c><00:47:28.819><c> interoperable</c><00:47:29.119><c> and</c><00:47:29.750><c> if</c><00:47:30.140><c> you</c>

00:47:30.220 --> 00:47:30.230 align:start position:0%
system that is interoperable and if you
 

00:47:30.230 --> 00:47:31.960 align:start position:0%
system that is interoperable and if you
can't<00:47:30.440><c> build</c><00:47:30.650><c> a</c><00:47:30.770><c> secure</c><00:47:31.069><c> contract</c><00:47:31.609><c> unless</c>

00:47:31.960 --> 00:47:31.970 align:start position:0%
can't build a secure contract unless
 

00:47:31.970 --> 00:47:33.490 align:start position:0%
can't build a secure contract unless
it's<00:47:32.240><c> being</c><00:47:32.420><c> called</c><00:47:32.660><c> by</c><00:47:32.809><c> an</c><00:47:32.869><c> externally</c><00:47:33.290><c> under</c>

00:47:33.490 --> 00:47:33.500 align:start position:0%
it's being called by an externally under
 

00:47:33.500 --> 00:47:34.839 align:start position:0%
it's being called by an externally under
count<00:47:33.710><c> then</c><00:47:33.950><c> you</c><00:47:33.980><c> need</c><00:47:34.250><c> to</c><00:47:34.400><c> rework</c><00:47:34.790><c> your</c>

00:47:34.839 --> 00:47:34.849 align:start position:0%
count then you need to rework your
 

00:47:34.849 --> 00:47:40.299 align:start position:0%
count then you need to rework your
contract<00:47:35.420><c> so</c><00:47:35.660><c> it</c><00:47:35.720><c> is</c><00:47:36.790><c> right</c><00:47:37.790><c> and</c><00:47:38.440><c> this</c><00:47:39.440><c> was</c><00:47:40.099><c> for</c>

00:47:40.299 --> 00:47:40.309 align:start position:0%
contract so it is right and this was for
 

00:47:40.309 --> 00:47:43.390 align:start position:0%
contract so it is right and this was for
the<00:47:40.369><c> mechanics</c><00:47:41.059><c> of</c><00:47:41.270><c> this</c><00:47:41.950><c> Nick</c><00:47:42.950><c> you</c><00:47:43.220><c> wanna</c>

00:47:43.390 --> 00:47:43.400 align:start position:0%
the mechanics of this Nick you wanna
 

00:47:43.400 --> 00:47:47.170 align:start position:0%
the mechanics of this Nick you wanna
yeah<00:47:43.970><c> so</c><00:47:44.420><c> if</c><00:47:45.049><c> you</c><00:47:45.290><c> call</c><00:47:45.440><c> self-destruct</c><00:47:46.309><c> the</c>

00:47:47.170 --> 00:47:47.180 align:start position:0%
yeah so if you call self-destruct the
 

00:47:47.180 --> 00:47:50.319 align:start position:0%
yeah so if you call self-destruct the
contracts<00:47:47.780><c> code</c><00:47:48.339><c> size</c><00:47:49.339><c> will</c><00:47:49.670><c> be</c><00:47:49.790><c> 0</c><00:47:50.030><c> even</c>

00:47:50.319 --> 00:47:50.329 align:start position:0%
contracts code size will be 0 even
 

00:47:50.329 --> 00:47:52.089 align:start position:0%
contracts code size will be 0 even
though<00:47:50.930><c> the</c><00:47:51.079><c> contracts</c><00:47:51.500><c> are</c><00:47:51.589><c> still</c><00:47:51.770><c> call</c><00:47:51.980><c> of</c>

00:47:52.089 --> 00:47:52.099 align:start position:0%
though the contracts are still call of
 

00:47:52.099 --> 00:47:53.470 align:start position:0%
though the contracts are still call of
all<00:47:52.190><c> for</c><00:47:52.369><c> the</c><00:47:52.430><c> rest</c><00:47:52.579><c> of</c><00:47:52.670><c> the</c><00:47:52.760><c> transaction</c><00:47:53.299><c> so</c>

00:47:53.470 --> 00:47:53.480 align:start position:0%
all for the rest of the transaction so
 

00:47:53.480 --> 00:47:55.450 align:start position:0%
all for the rest of the transaction so
you<00:47:53.960><c> could</c><00:47:54.230><c> exploit</c><00:47:54.559><c> this</c><00:47:54.770><c> by</c><00:47:55.040><c> having</c><00:47:55.369><c> your</c>

00:47:55.450 --> 00:47:55.460 align:start position:0%
you could exploit this by having your
 

00:47:55.460 --> 00:47:57.309 align:start position:0%
you could exploit this by having your
contract<00:47:55.910><c> self-destruct</c><00:47:56.510><c> itself</c><00:47:56.900><c> and</c><00:47:57.140><c> then</c>

00:47:57.309 --> 00:47:57.319 align:start position:0%
contract self-destruct itself and then
 

00:47:57.319 --> 00:47:59.740 align:start position:0%
contract self-destruct itself and then
called<00:47:57.589><c> us</c><00:47:57.799><c> and</c><00:47:58.099><c> then</c><00:47:58.250><c> do</c><00:47:58.819><c> a</c><00:47:58.849><c> entrance</c><00:47:59.359><c> e</c><00:47:59.510><c> and</c>

00:47:59.740 --> 00:47:59.750 align:start position:0%
called us and then do a entrance e and
 

00:47:59.750 --> 00:48:03.370 align:start position:0%
called us and then do a entrance e and
then<00:47:59.900><c> die</c><00:48:00.049><c> afterwards</c><00:48:01.000><c> no</c><00:48:02.000><c> no</c><00:48:02.299><c> no</c><00:48:02.510><c> no</c><00:48:02.690><c> no</c><00:48:03.079><c> the</c><00:48:03.260><c> X</c>

00:48:03.370 --> 00:48:03.380 align:start position:0%
then die afterwards no no no no no the X
 

00:48:03.380 --> 00:48:06.370 align:start position:0%
then die afterwards no no no no no the X
code<00:48:03.619><c> size</c><00:48:03.890><c> will</c><00:48:04.819><c> not</c><00:48:04.970><c> be</c><00:48:05.119><c> 0</c><00:48:05.329><c> and</c><00:48:05.809><c> I</c><00:48:05.930><c> get</c><00:48:06.079><c> back</c>

00:48:06.370 --> 00:48:06.380 align:start position:0%
code size will not be 0 and I get back
 

00:48:06.380 --> 00:48:10.329 align:start position:0%
code size will not be 0 and I get back
to<00:48:06.589><c> the</c><00:48:06.710><c> end</c><00:48:06.829><c> of</c><00:48:06.980><c> the</c><00:48:07.099><c> yeah</c><00:48:08.290><c> the</c><00:48:09.290><c> X</c><00:48:09.859><c> code</c><00:48:10.130><c> size</c>

00:48:10.329 --> 00:48:10.339 align:start position:0%
to the end of the yeah the X code size
 

00:48:10.339 --> 00:48:12.430 align:start position:0%
to the end of the yeah the X code size
would<00:48:10.549><c> still</c><00:48:10.849><c> be</c><00:48:11.150><c> the</c><00:48:11.540><c> actual</c><00:48:12.079><c> code</c><00:48:12.230><c> size</c>

00:48:12.430 --> 00:48:12.440 align:start position:0%
would still be the actual code size
 

00:48:12.440 --> 00:48:15.400 align:start position:0%
would still be the actual code size
until<00:48:12.799><c> after</c><00:48:13.099><c> they</c><00:48:13.220><c> but</c><00:48:13.869><c> the</c><00:48:14.869><c> constructor</c>

00:48:15.400 --> 00:48:15.410 align:start position:0%
until after they but the constructor
 

00:48:15.410 --> 00:48:17.500 align:start position:0%
until after they but the constructor
that's<00:48:15.950><c> it</c><00:48:16.099><c> yeah</c><00:48:16.220><c> because</c><00:48:16.790><c> they</c><00:48:17.059><c> construct</c>

00:48:17.500 --> 00:48:17.510 align:start position:0%
that's it yeah because they construct
 

00:48:17.510 --> 00:48:19.990 align:start position:0%
that's it yeah because they construct
during<00:48:17.839><c> the</c><00:48:17.930><c> constructor</c><00:48:18.460><c> right</c><00:48:19.460><c> then</c><00:48:19.760><c> the</c>

00:48:19.990 --> 00:48:20.000 align:start position:0%
during the constructor right then the
 

00:48:20.000 --> 00:48:22.240 align:start position:0%
during the constructor right then the
exercise<00:48:20.329><c> of</c><00:48:20.839><c> that</c><00:48:21.049><c> address</c><00:48:21.410><c> will</c><00:48:21.589><c> be</c><00:48:21.619><c> 0</c><00:48:21.980><c> and</c><00:48:22.099><c> I</c>

00:48:22.240 --> 00:48:22.250 align:start position:0%
exercise of that address will be 0 and I
 

00:48:22.250 --> 00:48:24.190 align:start position:0%
exercise of that address will be 0 and I
would<00:48:22.520><c> still</c><00:48:22.819><c> not</c><00:48:23.059><c> I</c><00:48:23.299><c> don't</c><00:48:23.510><c> know</c><00:48:23.569><c> the</c><00:48:23.750><c> TX</c>

00:48:24.190 --> 00:48:24.200 align:start position:0%
would still not I don't know the TX
 

00:48:24.200 --> 00:48:25.930 align:start position:0%
would still not I don't know the TX
Orion<00:48:24.710><c> thing</c><00:48:24.859><c> doesn't</c><00:48:25.190><c> make</c><00:48:25.339><c> it's</c><00:48:25.730><c> not</c><00:48:25.910><c> a</c>

00:48:25.930 --> 00:48:25.940 align:start position:0%
Orion thing doesn't make it's not a
 

00:48:25.940 --> 00:48:27.579 align:start position:0%
Orion thing doesn't make it's not a
comfortable<00:48:26.210><c> essential</c><00:48:26.900><c> for</c><00:48:27.049><c> me</c><00:48:27.140><c> long</c><00:48:27.319><c> term</c>

00:48:27.579 --> 00:48:27.589 align:start position:0%
comfortable essential for me long term
 

00:48:27.589 --> 00:48:29.829 align:start position:0%
comfortable essential for me long term
because<00:48:28.010><c> like</c><00:48:28.160><c> for</c><00:48:28.369><c> example</c><00:48:28.460><c> what</c><00:48:28.880><c> if</c><00:48:29.000><c> we</c><00:48:29.690><c> have</c>

00:48:29.829 --> 00:48:29.839 align:start position:0%
because like for example what if we have
 

00:48:29.839 --> 00:48:32.380 align:start position:0%
because like for example what if we have
to<00:48:29.990><c> text</c><00:48:30.410><c> abstraction</c><00:48:31.220><c> in</c><00:48:31.339><c> the</c><00:48:31.430><c> future</c><00:48:31.700><c> right</c>

00:48:32.380 --> 00:48:32.390 align:start position:0%
to text abstraction in the future right
 

00:48:32.390 --> 00:48:33.970 align:start position:0%
to text abstraction in the future right
like<00:48:32.599><c> the</c><00:48:32.839><c> you</c><00:48:33.140><c> know</c><00:48:33.230><c> things</c><00:48:33.440><c> coming</c><00:48:33.710><c> from</c><00:48:33.829><c> the</c>

00:48:33.970 --> 00:48:33.980 align:start position:0%
like the you know things coming from the
 

00:48:33.980 --> 00:48:35.319 align:start position:0%
like the you know things coming from the
unsigned<00:48:34.369><c> address</c><00:48:34.730><c> that</c><00:48:34.910><c> there</c><00:48:35.180><c> may</c><00:48:35.299><c> be</c>

00:48:35.319 --> 00:48:35.329 align:start position:0%
unsigned address that there may be
 

00:48:35.329 --> 00:48:36.789 align:start position:0%
unsigned address that there may be
actually<00:48:35.750><c> be</c><00:48:35.869><c> code</c><00:48:36.140><c> there</c><00:48:36.349><c> because</c><00:48:36.619><c> I'm</c><00:48:36.710><c> a</c>

00:48:36.789 --> 00:48:36.799 align:start position:0%
actually be code there because I'm a
 

00:48:36.799 --> 00:48:37.480 align:start position:0%
actually be code there because I'm a
countess

00:48:37.480 --> 00:48:37.490 align:start position:0%
countess
 

00:48:37.490 --> 00:48:38.859 align:start position:0%
countess
depending<00:48:37.910><c> on</c><00:48:37.940><c> how</c><00:48:38.059><c> its</c><00:48:38.180><c> implemented</c><00:48:38.510><c> in</c><00:48:38.780><c> the</c>

00:48:38.859 --> 00:48:38.869 align:start position:0%
depending on how its implemented in the
 

00:48:38.869 --> 00:48:40.510 align:start position:0%
depending on how its implemented in the
future<00:48:38.960><c> and</c><00:48:39.319><c> may</c><00:48:39.589><c> count</c><00:48:39.799><c> the</c><00:48:39.920><c> stub</c><00:48:40.130><c> us</c><00:48:40.280><c> code</c>

00:48:40.510 --> 00:48:40.520 align:start position:0%
future and may count the stub us code
 

00:48:40.520 --> 00:48:43.240 align:start position:0%
future and may count the stub us code
there<00:48:41.030><c> is</c><00:48:41.059><c> actually</c><00:48:41.450><c> I</c><00:48:41.630><c> think</c><00:48:41.869><c> maybe</c><00:48:42.500><c> only</c><00:48:43.040><c> one</c>

00:48:43.240 --> 00:48:43.250 align:start position:0%
there is actually I think maybe only one
 

00:48:43.250 --> 00:48:43.900 align:start position:0%
there is actually I think maybe only one
foolproof

00:48:43.900 --> 00:48:43.910 align:start position:0%
foolproof
 

00:48:43.910 --> 00:48:45.880 align:start position:0%
foolproof
future-proof<00:48:44.809><c> way</c><00:48:44.990><c> to</c><00:48:45.049><c> do</c><00:48:45.230><c> this</c><00:48:45.349><c> which</c><00:48:45.859><c> is</c>

00:48:45.880 --> 00:48:45.890 align:start position:0%
future-proof way to do this which is
 

00:48:45.890 --> 00:48:48.190 align:start position:0%
future-proof way to do this which is
check<00:48:46.790><c> the</c><00:48:47.180><c> hash</c>

00:48:48.190 --> 00:48:48.200 align:start position:0%
check the hash
 

00:48:48.200 --> 00:48:51.160 align:start position:0%
check the hash
of<00:48:48.260><c> message</c><00:48:48.859><c> sender</c><00:48:49.220><c> against</c><00:48:49.940><c> a</c><00:48:50.089><c> signature</c><00:48:51.050><c> of</c>

00:48:51.160 --> 00:48:51.170 align:start position:0%
of message sender against a signature of
 

00:48:51.170 --> 00:48:53.500 align:start position:0%
of message sender against a signature of
message<00:48:51.800><c> from</c><00:48:52.280><c> that</c><00:48:52.339><c> address</c><00:48:52.640><c> right</c><00:48:53.030><c> because</c>

00:48:53.500 --> 00:48:53.510 align:start position:0%
message from that address right because
 

00:48:53.510 --> 00:48:55.599 align:start position:0%
message from that address right because
smart<00:48:53.930><c> contracts</c><00:48:54.410><c> obviously</c><00:48:55.190><c> anything</c><00:48:55.430><c> that</c>

00:48:55.599 --> 00:48:55.609 align:start position:0%
smart contracts obviously anything that
 

00:48:55.609 --> 00:48:57.040 align:start position:0%
smart contracts obviously anything that
is<00:48:55.880><c> a</c><00:48:55.910><c> public</c><00:48:56.300><c> contract</c><00:48:56.630><c> can't</c><00:48:56.900><c> have</c><00:48:56.990><c> a</c>

00:48:57.040 --> 00:48:57.050 align:start position:0%
is a public contract can't have a
 

00:48:57.050 --> 00:48:59.890 align:start position:0%
is a public contract can't have a
private<00:48:57.440><c> key</c><00:48:57.820><c> so</c><00:48:58.820><c> if</c><00:48:59.210><c> you</c><00:48:59.300><c> if</c><00:48:59.480><c> you</c><00:48:59.570><c> make</c><00:48:59.599><c> sure</c>

00:48:59.890 --> 00:48:59.900 align:start position:0%
private key so if you if you make sure
 

00:48:59.900 --> 00:49:01.750 align:start position:0%
private key so if you if you make sure
that<00:49:00.050><c> you</c><00:49:00.589><c> get</c><00:49:00.680><c> a</c><00:49:00.740><c> signature</c><00:49:01.130><c> from</c><00:49:01.430><c> whoever's</c>

00:49:01.750 --> 00:49:01.760 align:start position:0%
that you get a signature from whoever's
 

00:49:01.760 --> 00:49:04.030 align:start position:0%
that you get a signature from whoever's
calling<00:49:02.000><c> then</c><00:49:02.990><c> that's</c><00:49:03.140><c> that's</c><00:49:03.440><c> like</c><00:49:03.530><c> a</c><00:49:03.650><c> I</c>

00:49:04.030 --> 00:49:04.040 align:start position:0%
calling then that's that's like a I
 

00:49:04.040 --> 00:49:06.220 align:start position:0%
calling then that's that's like a I
would<00:49:04.760><c> assume</c><00:49:04.940><c> a</c><00:49:05.060><c> foolproof</c><00:49:05.270><c> way</c><00:49:05.420><c> probably</c>

00:49:06.220 --> 00:49:06.230 align:start position:0%
would assume a foolproof way probably
 

00:49:06.230 --> 00:49:08.530 align:start position:0%
would assume a foolproof way probably
yeah<00:49:07.190><c> who</c><00:49:07.339><c> knows</c><00:49:07.490><c> what</c><00:49:07.700><c> well</c><00:49:07.910><c> is</c><00:49:08.089><c> he</c><00:49:08.180><c> moon</c><00:49:08.359><c> math</c>

00:49:08.530 --> 00:49:08.540 align:start position:0%
yeah who knows what well is he moon math
 

00:49:08.540 --> 00:49:21.160 align:start position:0%
yeah who knows what well is he moon math
will<00:49:08.690><c> having</c><00:49:08.869><c> a</c><00:49:08.930><c> few</c><00:49:09.079><c> million</c><00:49:09.530><c> I</c><00:49:20.020><c> mean</c><00:49:21.020><c> I</c><00:49:21.079><c> think</c>

00:49:21.160 --> 00:49:21.170 align:start position:0%
will having a few million I mean I think
 

00:49:21.170 --> 00:49:23.050 align:start position:0%
will having a few million I mean I think
in<00:49:21.530><c> this</c><00:49:21.800><c> particular</c><00:49:21.950><c> case</c><00:49:22.490><c> it</c><00:49:22.700><c> might</c><00:49:22.849><c> not</c>

00:49:23.050 --> 00:49:23.060 align:start position:0%
in this particular case it might not
 

00:49:23.060 --> 00:49:24.609 align:start position:0%
in this particular case it might not
actually<00:49:23.089><c> be</c><00:49:23.480><c> exploitable</c><00:49:24.050><c> because</c><00:49:24.500><c> it</c>

00:49:24.609 --> 00:49:24.619 align:start position:0%
actually be exploitable because it
 

00:49:24.619 --> 00:49:26.410 align:start position:0%
actually be exploitable because it
didn't<00:49:24.920><c> realize</c><00:49:25.190><c> they</c><00:49:25.430><c> calling</c><00:49:25.910><c> the</c><00:49:26.089><c> thing</c><00:49:26.300><c> as</c>

00:49:26.410 --> 00:49:26.420 align:start position:0%
didn't realize they calling the thing as
 

00:49:26.420 --> 00:49:29.470 align:start position:0%
didn't realize they calling the thing as
asserted<00:49:26.960><c> wasn't</c><00:49:27.560><c> a</c><00:49:27.619><c> contract</c><00:49:27.950><c> so</c><00:49:28.910><c> if</c><00:49:29.240><c> it's</c>

00:49:29.470 --> 00:49:29.480 align:start position:0%
asserted wasn't a contract so if it's
 

00:49:29.480 --> 00:49:31.180 align:start position:0%
asserted wasn't a contract so if it's
still<00:49:29.750><c> in</c><00:49:29.869><c> the</c><00:49:29.960><c> constructor</c><00:49:30.500><c> it</c><00:49:30.650><c> has</c><00:49:30.800><c> no</c><00:49:30.950><c> code</c>

00:49:31.180 --> 00:49:31.190 align:start position:0%
still in the constructor it has no code
 

00:49:31.190 --> 00:49:37.000 align:start position:0%
still in the constructor it has no code
and<00:49:31.460><c> you</c><00:49:31.550><c> can't</c><00:49:31.820><c> call</c><00:49:32.119><c> it</c><00:49:32.300><c> back</c><00:49:32.540><c> yet</c><00:49:32.990><c> but</c><00:49:36.010><c> I</c>

00:49:37.000 --> 00:49:37.010 align:start position:0%
and you can't call it back yet but I
 

00:49:37.010 --> 00:49:41.000 align:start position:0%
and you can't call it back yet but I
didn't<00:49:37.609><c> touch</c><00:49:38.450><c> that</c><00:49:38.720><c> so</c><00:49:38.930><c> what</c><00:49:39.260><c> was</c><00:49:39.380><c> the</c><00:49:39.530><c> idea</c>

00:49:41.000 --> 00:49:41.010 align:start position:0%
didn't touch that so what was the idea
 

00:49:41.010 --> 00:49:51.550 align:start position:0%
didn't touch that so what was the idea
[Music]

00:49:51.550 --> 00:49:51.560 align:start position:0%
 
 

00:49:51.560 --> 00:50:00.930 align:start position:0%
 
[Music]

00:50:00.930 --> 00:50:00.940 align:start position:0%
 
 

00:50:00.940 --> 00:50:04.089 align:start position:0%
 
yeah<00:50:02.000><c> in</c><00:50:02.450><c> this</c><00:50:02.630><c> case</c><00:50:02.839><c> message</c><00:50:03.500><c> sender</c><00:50:03.800><c> has</c><00:50:03.920><c> no</c>

00:50:04.089 --> 00:50:04.099 align:start position:0%
yeah in this case message sender has no
 

00:50:04.099 --> 00:50:06.309 align:start position:0%
yeah in this case message sender has no
code<00:50:04.310><c> it</c><00:50:04.490><c> so</c><00:50:04.730><c> works</c><00:50:05.240><c> cuz</c><00:50:05.480><c> it's</c><00:50:05.660><c> just</c><00:50:05.720><c> a</c><00:50:05.990><c> valley</c>

00:50:06.309 --> 00:50:06.319 align:start position:0%
code it so works cuz it's just a valley
 

00:50:06.319 --> 00:50:08.440 align:start position:0%
code it so works cuz it's just a valley
transfer<00:50:06.710><c> yes</c><00:50:07.190><c> but</c><00:50:07.670><c> it</c><00:50:07.760><c> can't</c><00:50:07.970><c> be</c><00:50:08.030><c> exploited</c>

00:50:08.440 --> 00:50:08.450 align:start position:0%
transfer yes but it can't be exploited
 

00:50:08.450 --> 00:50:10.240 align:start position:0%
transfer yes but it can't be exploited
very<00:50:08.660><c> entrance</c><00:50:08.960><c> II</c><00:50:09.200><c> which</c><00:50:09.470><c> I</c><00:50:09.619><c> assume</c><00:50:09.920><c> is</c><00:50:10.040><c> what</c>

00:50:10.240 --> 00:50:10.250 align:start position:0%
very entrance II which I assume is what
 

00:50:10.250 --> 00:50:13.030 align:start position:0%
very entrance II which I assume is what
the<00:50:10.490><c> author</c><00:50:10.940><c> was</c><00:50:11.210><c> worried</c><00:50:11.480><c> about</c><00:50:12.040><c> question</c>

00:50:13.030 --> 00:50:13.040 align:start position:0%
the author was worried about question
 

00:50:13.040 --> 00:50:15.490 align:start position:0%
the author was worried about question
actually<00:50:13.190><c> can</c><00:50:13.730><c> you</c><00:50:13.910><c> set</c><00:50:14.359><c> the</c><00:50:14.390><c> unit</c><00:50:14.660><c> code</c><00:50:14.839><c> to</c><00:50:15.170><c> be</c>

00:50:15.490 --> 00:50:15.500 align:start position:0%
actually can you set the unit code to be
 

00:50:15.500 --> 00:50:17.559 align:start position:0%
actually can you set the unit code to be
empty<00:50:16.099><c> so</c><00:50:16.339><c> you</c><00:50:16.400><c> can</c><00:50:16.670><c> have</c><00:50:16.819><c> a</c><00:50:16.849><c> contract</c><00:50:17.300><c> with</c><00:50:17.359><c> no</c>

00:50:17.559 --> 00:50:17.569 align:start position:0%
empty so you can have a contract with no
 

00:50:17.569 --> 00:50:20.050 align:start position:0%
empty so you can have a contract with no
code<00:50:17.780><c> yes</c><00:50:18.410><c> you</c><00:50:18.740><c> can</c><00:50:18.950><c> you</c><00:50:19.369><c> can</c><00:50:19.520><c> just</c><00:50:19.550><c> literally</c>

00:50:20.050 --> 00:50:20.060 align:start position:0%
code yes you can you can just literally
 

00:50:20.060 --> 00:50:20.980 align:start position:0%
code yes you can you can just literally
return<00:50:20.300><c> zero</c><00:50:20.540><c> vibes</c>

00:50:20.980 --> 00:50:20.990 align:start position:0%
return zero vibes
 

00:50:20.990 --> 00:50:25.000 align:start position:0%
return zero vibes
great<00:50:21.290><c> so</c><00:50:22.130><c> that</c><00:50:22.310><c> idea</c><00:50:22.670><c> by</c><00:50:23.359><c> the</c><00:50:23.420><c> way</c><00:50:23.569><c> with</c><00:50:24.010><c> that</c>

00:50:25.000 --> 00:50:25.010 align:start position:0%
great so that idea by the way with that
 

00:50:25.010 --> 00:50:28.859 align:start position:0%
great so that idea by the way with that
depends<00:50:25.400><c> on</c><00:50:25.490><c> that</c><00:50:25.640><c> the</c><00:50:26.630><c> idea</c><00:50:26.930><c> that</c><00:50:27.170><c> for</c><00:50:28.010><c> a</c>

00:50:28.859 --> 00:50:28.869 align:start position:0%
depends on that the idea that for a
 

00:50:28.869 --> 00:50:31.780 align:start position:0%
depends on that the idea that for a
transaction<00:50:29.869><c> a</c><00:50:30.140><c> later</c><00:50:30.380><c> transaction</c><00:50:31.280><c> they</c>

00:50:31.780 --> 00:50:31.790 align:start position:0%
transaction a later transaction they
 

00:50:31.790 --> 00:50:34.240 align:start position:0%
transaction a later transaction they
cannot<00:50:32.420><c> have</c><00:50:32.930><c> a</c><00:50:33.140><c> zero</c><00:50:33.500><c> code</c><00:50:33.710><c> size</c><00:50:33.920><c> again</c>

00:50:34.240 --> 00:50:34.250 align:start position:0%
cannot have a zero code size again
 

00:50:34.250 --> 00:50:35.980 align:start position:0%
cannot have a zero code size again
because<00:50:34.760><c> the</c><00:50:34.880><c> constructor</c><00:50:35.270><c> will</c><00:50:35.540><c> not</c><00:50:35.660><c> be</c><00:50:35.810><c> run</c>

00:50:35.980 --> 00:50:35.990 align:start position:0%
because the constructor will not be run
 

00:50:35.990 --> 00:50:39.760 align:start position:0%
because the constructor will not be run
again<00:50:36.260><c> and</c><00:50:37.869><c> if</c><00:50:38.869><c> it's</c><00:50:39.140><c> in</c><00:50:39.260><c> a</c><00:50:39.319><c> different</c><00:50:39.470><c> block</c>

00:50:39.760 --> 00:50:39.770 align:start position:0%
again and if it's in a different block
 

00:50:39.770 --> 00:50:45.120 align:start position:0%
again and if it's in a different block
and<00:50:40.069><c> that</c><00:50:40.400><c> is</c><00:50:40.609><c> true</c><00:50:41.000><c> for</c><00:50:41.800><c> about</c><00:50:42.800><c> another</c><00:50:43.040><c> month</c>

00:50:45.120 --> 00:50:45.130 align:start position:0%
and that is true for about another month
 

00:50:45.130 --> 00:50:49.540 align:start position:0%
and that is true for about another month
but<00:50:46.130><c> then</c><00:50:46.310><c> we</c><00:50:46.460><c> have</c><00:50:46.579><c> create</c><00:50:46.940><c> two</c><00:50:47.800><c> coming</c><00:50:48.800><c> we</c>

00:50:49.540 --> 00:50:49.550 align:start position:0%
but then we have create two coming we
 

00:50:49.550 --> 00:50:53.410 align:start position:0%
but then we have create two coming we
kind<00:50:50.390><c> of</c><00:50:50.540><c> changes</c><00:50:51.079><c> the</c><00:50:51.230><c> semantics</c><00:50:52.040><c> and</c><00:50:52.420><c> the</c>

00:50:53.410 --> 00:50:53.420 align:start position:0%
kind of changes the semantics and the
 

00:50:53.420 --> 00:50:57.309 align:start position:0%
kind of changes the semantics and the
pattern<00:50:53.990><c> of</c><00:50:54.200><c> contract</c><00:50:54.859><c> creation</c><00:50:55.430><c> a</c><00:50:55.640><c> bit</c><00:50:56.319><c> so</c>

00:50:57.309 --> 00:50:57.319 align:start position:0%
pattern of contract creation a bit so
 

00:50:57.319 --> 00:50:59.980 align:start position:0%
pattern of contract creation a bit so
that<00:50:57.890><c> and</c><00:50:58.369><c> it</c><00:50:58.730><c> will</c><00:50:58.910><c> have</c><00:50:59.060><c> quite</c><00:50:59.240><c> an</c><00:50:59.420><c> impact</c><00:50:59.450><c> on</c>

00:50:59.980 --> 00:50:59.990 align:start position:0%
that and it will have quite an impact on
 

00:50:59.990 --> 00:51:01.560 align:start position:0%
that and it will have quite an impact on
security

00:51:01.560 --> 00:51:01.570 align:start position:0%
security
 

00:51:01.570 --> 00:51:04.080 align:start position:0%
security
on<00:51:02.380><c> the</c><00:51:02.620><c> security</c><00:51:03.100><c> aspects</c><00:51:03.550><c> of</c><00:51:03.670><c> how</c><00:51:03.790><c> you</c><00:51:03.850><c> deal</c>

00:51:04.080 --> 00:51:04.090 align:start position:0%
on the security aspects of how you deal
 

00:51:04.090 --> 00:51:07.200 align:start position:0%
on the security aspects of how you deal
with<00:51:04.120><c> external</c><00:51:04.720><c> contracts</c><00:51:05.590><c> and</c><00:51:06.210><c> assumptions</c>

00:51:07.200 --> 00:51:07.210 align:start position:0%
with external contracts and assumptions
 

00:51:07.210 --> 00:51:10.200 align:start position:0%
with external contracts and assumptions
that<00:51:07.390><c> you</c><00:51:07.510><c> can</c><00:51:07.690><c> make</c><00:51:07.900><c> because</c><00:51:08.790><c> it</c><00:51:09.790><c> will</c><00:51:10.030><c> be</c>

00:51:10.200 --> 00:51:10.210 align:start position:0%
that you can make because it will be
 

00:51:10.210 --> 00:51:13.560 align:start position:0%
that you can make because it will be
possible<00:51:10.420><c> to</c><00:51:11.130><c> take</c><00:51:12.130><c> down</c><00:51:12.430><c> a</c><00:51:12.460><c> contract</c><00:51:12.970><c> and</c>

00:51:13.560 --> 00:51:13.570 align:start position:0%
possible to take down a contract and
 

00:51:13.570 --> 00:51:15.120 align:start position:0%
possible to take down a contract and
replace<00:51:14.140><c> it</c><00:51:14.350><c> with</c><00:51:14.380><c> something</c><00:51:14.830><c> completely</c>

00:51:15.120 --> 00:51:15.130 align:start position:0%
replace it with something completely
 

00:51:15.130 --> 00:51:19.290 align:start position:0%
replace it with something completely
different<00:51:15.580><c> on</c><00:51:16.360><c> the</c><00:51:16.990><c> same</c><00:51:17.170><c> address</c><00:51:18.300><c> through</c>

00:51:19.290 --> 00:51:19.300 align:start position:0%
different on the same address through
 

00:51:19.300 --> 00:51:23.610 align:start position:0%
different on the same address through
the<00:51:19.330><c> use</c><00:51:19.750><c> of</c><00:51:20.790><c> loading</c><00:51:21.790><c> the</c><00:51:22.420><c> actual</c><00:51:22.990><c> body</c><00:51:23.350><c> code</c>

00:51:23.610 --> 00:51:23.620 align:start position:0%
the use of loading the actual body code
 

00:51:23.620 --> 00:51:25.950 align:start position:0%
the use of loading the actual body code
from<00:51:23.980><c> an</c><00:51:24.130><c> Oracle</c><00:51:24.550><c> on</c><00:51:24.760><c> chain</c><00:51:25.150><c> in</c><00:51:25.810><c> the</c>

00:51:25.950 --> 00:51:25.960 align:start position:0%
from an Oracle on chain in the
 

00:51:25.960 --> 00:51:27.420 align:start position:0%
from an Oracle on chain in the
constructor<00:51:26.350><c> because</c><00:51:26.770><c> address</c><00:51:27.250><c> is</c>

00:51:27.420 --> 00:51:27.430 align:start position:0%
constructor because address is
 

00:51:27.430 --> 00:51:29.190 align:start position:0%
constructor because address is
determined<00:51:27.940><c> from</c><00:51:28.000><c> the</c><00:51:28.180><c> from</c><00:51:28.660><c> the</c><00:51:28.780><c> init</c><00:51:29.020><c> code</c>

00:51:29.190 --> 00:51:29.200 align:start position:0%
determined from the from the init code
 

00:51:29.200 --> 00:51:31.530 align:start position:0%
determined from the from the init code
and<00:51:29.740><c> not</c><00:51:29.860><c> from</c><00:51:30.040><c> the</c><00:51:30.130><c> actual</c><00:51:30.220><c> runtime</c><00:51:31.210><c> byte</c>

00:51:31.530 --> 00:51:31.540 align:start position:0%
and not from the actual runtime byte
 

00:51:31.540 --> 00:51:33.600 align:start position:0%
and not from the actual runtime byte
code<00:51:31.780><c> and</c><00:51:32.530><c> actually</c><00:51:32.890><c> I</c><00:51:33.070><c> take</c><00:51:33.220><c> back</c><00:51:33.430><c> what</c><00:51:33.580><c> I</c>

00:51:33.600 --> 00:51:33.610 align:start position:0%
code and actually I take back what I
 

00:51:33.610 --> 00:51:35.550 align:start position:0%
code and actually I take back what I
said<00:51:33.670><c> before</c><00:51:33.850><c> I'm</c><00:51:34.690><c> smart</c><00:51:34.930><c> contract</c><00:51:35.320><c> there's</c>

00:51:35.550 --> 00:51:35.560 align:start position:0%
said before I'm smart contract there's
 

00:51:35.560 --> 00:51:37.650 align:start position:0%
said before I'm smart contract there's
technically<00:51:36.340><c> and</c><00:51:36.520><c> extremely</c><00:51:36.910><c> statistically</c>

00:51:37.650 --> 00:51:37.660 align:start position:0%
technically and extremely statistically
 

00:51:37.660 --> 00:51:39.540 align:start position:0%
technically and extremely statistically
unlikely<00:51:37.780><c> possibility</c><00:51:38.230><c> that</c><00:51:38.830><c> you</c><00:51:38.950><c> can</c><00:51:39.190><c> create</c>

00:51:39.540 --> 00:51:39.550 align:start position:0%
unlikely possibility that you can create
 

00:51:39.550 --> 00:51:41.430 align:start position:0%
unlikely possibility that you can create
as<00:51:39.940><c> more</c><00:51:40.210><c> contract</c><00:51:40.600><c> address</c><00:51:41.020><c> that</c><00:51:41.170><c> you</c><00:51:41.290><c> have</c>

00:51:41.430 --> 00:51:41.440 align:start position:0%
as more contract address that you have
 

00:51:41.440 --> 00:51:42.870 align:start position:0%
as more contract address that you have
private<00:51:41.710><c> key</c><00:51:41.830><c> to</c><00:51:41.980><c> there's</c><00:51:42.280><c> collisions</c><00:51:42.700><c> in</c>

00:51:42.870 --> 00:51:42.880 align:start position:0%
private key to there's collisions in
 

00:51:42.880 --> 00:51:45.960 align:start position:0%
private key to there's collisions in
this<00:51:43.000><c> in</c><00:51:43.210><c> the</c><00:51:43.360><c> name</c><00:51:43.510><c> space</c><00:51:43.750><c> but</c><00:51:44.410><c> it's</c><00:51:44.970><c> meteos</c>

00:51:45.960 --> 00:51:45.970 align:start position:0%
this in the name space but it's meteos
 

00:51:45.970 --> 00:51:47.610 align:start position:0%
this in the name space but it's meteos
simultaneously<00:51:46.810><c> has</c><00:51:46.960><c> ev'ry</c><00:51:47.230><c> etherium</c>

00:51:47.610 --> 00:51:47.620 align:start position:0%
simultaneously has ev'ry etherium
 

00:51:47.620 --> 00:51:49.590 align:start position:0%
simultaneously has ev'ry etherium
practitioner<00:51:48.100><c> in</c><00:51:48.190><c> the</c><00:51:48.250><c> world</c><00:51:48.460><c> unlikely</c><00:51:49.060><c> yeah</c>

00:51:49.590 --> 00:51:49.600 align:start position:0%
practitioner in the world unlikely yeah
 

00:51:49.600 --> 00:52:08.210 align:start position:0%
practitioner in the world unlikely yeah
yeah<00:51:49.930><c> what</c><00:51:50.170><c> I</c><00:51:50.200><c> mean</c><00:51:50.380><c> you</c><00:51:50.620><c> know</c><00:51:50.650><c> possible</c><00:51:53.400><c> yes</c>

00:52:08.210 --> 00:52:08.220 align:start position:0%
 
 

00:52:08.220 --> 00:52:10.950 align:start position:0%
 
yeah<00:52:09.220><c> I</c><00:52:09.490><c> mean</c><00:52:09.760><c> it's</c><00:52:09.940><c> it's</c><00:52:10.120><c> like</c><00:52:10.510><c> getting</c><00:52:10.810><c> that</c>

00:52:10.950 --> 00:52:10.960 align:start position:0%
yeah I mean it's it's like getting that
 

00:52:10.960 --> 00:52:13.560 align:start position:0%
yeah I mean it's it's like getting that
collision<00:52:11.260><c> is</c><00:52:11.500><c> like</c><00:52:11.710><c> you</c><00:52:12.040><c> know</c><00:52:12.130><c> one</c><00:52:12.910><c> in</c><00:52:13.120><c> ten</c>

00:52:13.560 --> 00:52:13.570 align:start position:0%
collision is like you know one in ten
 

00:52:13.570 --> 00:52:17.210 align:start position:0%
collision is like you know one in ten
billion<00:52:13.870><c> universes</c><00:52:14.380><c> please</c><00:52:14.860><c> don't</c><00:52:15.160><c> do</c><00:52:15.310><c> it</c>

00:52:17.210 --> 00:52:17.220 align:start position:0%
billion universes please don't do it
 

00:52:17.220 --> 00:52:19.830 align:start position:0%
billion universes please don't do it
please<00:52:18.220><c> please</c><00:52:18.490><c> don't</c><00:52:18.730><c> do</c><00:52:18.850><c> it</c><00:52:18.970><c> because</c><00:52:19.300><c> it's</c>

00:52:19.830 --> 00:52:19.840 align:start position:0%
please please don't do it because it's
 

00:52:19.840 --> 00:52:21.990 align:start position:0%
please please don't do it because it's
systems<00:52:20.800><c> are</c><00:52:20.950><c> much</c><00:52:21.040><c> more</c><00:52:21.220><c> useful</c><00:52:21.610><c> as</c><00:52:21.730><c> they</c><00:52:21.850><c> can</c>

00:52:21.990 --> 00:52:22.000 align:start position:0%
systems are much more useful as they can
 

00:52:22.000 --> 00:52:23.820 align:start position:0%
systems are much more useful as they can
be<00:52:22.090><c> interacted</c><00:52:22.600><c> with</c><00:52:22.630><c> by</c><00:52:22.930><c> other</c><00:52:23.080><c> systems</c><00:52:23.320><c> than</c>

00:52:23.820 --> 00:52:23.830 align:start position:0%
be interacted with by other systems than
 

00:52:23.830 --> 00:52:25.260 align:start position:0%
be interacted with by other systems than
if<00:52:23.950><c> you</c><00:52:24.100><c> try</c><00:52:24.340><c> and</c><00:52:24.490><c> enforce</c><00:52:24.790><c> that</c><00:52:25.000><c> they</c><00:52:25.150><c> can</c>

00:52:25.260 --> 00:52:25.270 align:start position:0%
if you try and enforce that they can
 

00:52:25.270 --> 00:52:36.720 align:start position:0%
if you try and enforce that they can
only<00:52:25.390><c> interact</c><00:52:25.870><c> to</c><00:52:26.020><c> us</c><00:52:26.170><c> by</c><00:52:26.350><c> users</c><00:52:35.400><c> we</c><00:52:36.400><c> kind</c><00:52:36.610><c> of</c>

00:52:36.720 --> 00:52:36.730 align:start position:0%
only interact to us by users we kind of
 

00:52:36.730 --> 00:52:38.760 align:start position:0%
only interact to us by users we kind of
giving<00:52:37.030><c> up</c><00:52:37.150><c> on</c><00:52:37.300><c> security</c><00:52:37.780><c> do</c><00:52:37.900><c> you</c><00:52:38.440><c> think</c><00:52:38.650><c> the</c>

00:52:38.760 --> 00:52:38.770 align:start position:0%
giving up on security do you think the
 

00:52:38.770 --> 00:52:44.090 align:start position:0%
giving up on security do you think the
interview<00:52:39.160><c> happened</c><00:52:39.640><c> everything</c><00:52:39.910><c> that</c><00:52:40.210><c> we</c>

00:52:44.090 --> 00:52:44.100 align:start position:0%
 
 

00:52:44.100 --> 00:52:47.100 align:start position:0%
 
think<00:52:45.100><c> is</c><00:52:45.640><c> the</c><00:52:45.850><c> reentrant</c><00:52:46.270><c> egad</c><00:52:46.600><c> structured</c>

00:52:47.100 --> 00:52:47.110 align:start position:0%
think is the reentrant egad structured
 

00:52:47.110 --> 00:52:48.720 align:start position:0%
think is the reentrant egad structured
like<00:52:47.260><c> this</c><00:52:47.290><c> where</c><00:52:47.740><c> it</c><00:52:47.860><c> can</c><00:52:47.980><c> only</c><00:52:48.070><c> be</c><00:52:48.250><c> called</c><00:52:48.460><c> by</c>

00:52:48.720 --> 00:52:48.730 align:start position:0%
like this where it can only be called by
 

00:52:48.730 --> 00:52:56.670 align:start position:0%
like this where it can only be called by
external<00:52:49.330><c> code</c><00:52:52.350><c> yep</c><00:52:53.350><c> so</c><00:52:54.070><c> I</c><00:52:54.790><c> would</c><00:52:55.630><c> call</c><00:52:55.870><c> like</c><00:52:56.620><c> a</c>

00:52:56.670 --> 00:52:56.680 align:start position:0%
external code yep so I would call like a
 

00:52:56.680 --> 00:52:59.760 align:start position:0%
external code yep so I would call like a
mutex<00:52:57.190><c> like</c><00:52:57.610><c> a</c><00:52:57.640><c> last</c><00:52:58.480><c> like</c><00:52:59.080><c> a</c><00:52:59.110><c> last</c><00:52:59.410><c> resort</c>

00:52:59.760 --> 00:52:59.770 align:start position:0%
mutex like a last like a last resort
 

00:52:59.770 --> 00:53:01.980 align:start position:0%
mutex like a last like a last resort
it's<00:53:00.130><c> better</c><00:53:00.430><c> than</c><00:53:00.670><c> this</c><00:53:00.850><c> but</c><00:53:01.300><c> it's</c><00:53:01.690><c> still</c>

00:53:01.980 --> 00:53:01.990 align:start position:0%
it's better than this but it's still
 

00:53:01.990 --> 00:53:03.270 align:start position:0%
it's better than this but it's still
like<00:53:02.290><c> you</c><00:53:02.440><c> should</c><00:53:02.680><c> be</c><00:53:02.770><c> able</c><00:53:02.860><c> to</c><00:53:02.950><c> write</c><00:53:03.130><c> your</c>

00:53:03.270 --> 00:53:03.280 align:start position:0%
like you should be able to write your
 

00:53:03.280 --> 00:53:06.360 align:start position:0%
like you should be able to write your
code<00:53:03.400><c> without</c><00:53:03.580><c> mutexes</c><00:53:04.390><c> if</c><00:53:05.380><c> you</c><00:53:05.830><c> really</c><00:53:06.130><c> can't</c>

00:53:06.360 --> 00:53:06.370 align:start position:0%
code without mutexes if you really can't
 

00:53:06.370 --> 00:53:07.860 align:start position:0%
code without mutexes if you really can't
then<00:53:06.640><c> actually</c><00:53:07.030><c> mutexes</c><00:53:07.450><c> will</c><00:53:07.600><c> get</c><00:53:07.720><c> more</c>

00:53:07.860 --> 00:53:07.870 align:start position:0%
then actually mutexes will get more
 

00:53:07.870 --> 00:53:09.930 align:start position:0%
then actually mutexes will get more
efficient<00:53:08.320><c> in</c><00:53:08.530><c> the</c><00:53:08.650><c> next</c><00:53:08.980><c> hard</c><00:53:09.340><c> fork</c><00:53:09.640><c> because</c>

00:53:09.930 --> 00:53:09.940 align:start position:0%
efficient in the next hard fork because
 

00:53:09.940 --> 00:53:14.880 align:start position:0%
efficient in the next hard fork because
of<00:53:10.510><c> net</c><00:53:11.020><c> gas</c><00:53:11.230><c> majoring</c><00:53:11.680><c> yeah</c><00:53:13.590><c> yeah</c><00:53:14.590><c> but</c><00:53:14.800><c> be</c>

00:53:14.880 --> 00:53:14.890 align:start position:0%
of net gas majoring yeah yeah but be
 

00:53:14.890 --> 00:53:15.390 align:start position:0%
of net gas majoring yeah yeah but be
careful

00:53:15.390 --> 00:53:15.400 align:start position:0%
careful
 

00:53:15.400 --> 00:53:18.210 align:start position:0%
careful
yeah<00:53:15.970><c> everyone</c><00:53:16.749><c> read</c><00:53:16.960><c> up</c><00:53:17.109><c> on</c><00:53:17.259><c> create</c><00:53:17.920><c> two</c>

00:53:18.210 --> 00:53:18.220 align:start position:0%
yeah everyone read up on create two
 

00:53:18.220 --> 00:53:19.440 align:start position:0%
yeah everyone read up on create two
because<00:53:18.640><c> that's</c><00:53:18.849><c> gonna</c><00:53:18.970><c> break</c><00:53:19.150><c> a</c><00:53:19.210><c> lot</c><00:53:19.359><c> of</c>

00:53:19.440 --> 00:53:19.450 align:start position:0%
because that's gonna break a lot of
 

00:53:19.450 --> 00:53:21.660 align:start position:0%
because that's gonna break a lot of
assumptions<00:53:19.690><c> you</c><00:53:19.900><c> guys</c><00:53:20.049><c> have</c><00:53:20.259><c> a</c><00:53:20.640><c> lot</c><00:53:21.640><c> of</c>

00:53:21.660 --> 00:53:21.670 align:start position:0%
assumptions you guys have a lot of
 

00:53:21.670 --> 00:53:24.870 align:start position:0%
assumptions you guys have a lot of
opportunities<00:53:22.630><c> as</c><00:53:22.960><c> well</c><00:53:23.289><c> yeah</c><00:53:23.829><c> so</c><00:53:24.160><c> they're</c>

00:53:24.870 --> 00:53:24.880 align:start position:0%
opportunities as well yeah so they're
 

00:53:24.880 --> 00:53:26.999 align:start position:0%
opportunities as well yeah so they're
like<00:53:25.150><c> only</c><00:53:25.990><c> a</c><00:53:26.170><c> couple</c><00:53:26.380><c> of</c><00:53:26.470><c> minutes</c><00:53:26.799><c> and</c><00:53:26.890><c> the</c>

00:53:26.999 --> 00:53:27.009 align:start position:0%
like only a couple of minutes and the
 

00:53:27.009 --> 00:53:31.769 align:start position:0%
like only a couple of minutes and the
next<00:53:27.130><c> team</c><00:53:28.049><c> are</c><00:53:29.049><c> back</c><00:53:29.380><c> to</c><00:53:29.589><c> back</c><00:53:29.940><c> so</c><00:53:30.940><c> we</c><00:53:31.059><c> can</c>

00:53:31.769 --> 00:53:31.779 align:start position:0%
next team are back to back so we can
 

00:53:31.779 --> 00:53:36.599 align:start position:0%
next team are back to back so we can
have<00:53:31.930><c> like</c><00:53:32.140><c> one</c><00:53:32.859><c> more</c><00:53:33.009><c> question</c><00:53:33.160><c> or</c><00:53:33.519><c> so</c><00:53:35.190><c> so</c><00:53:36.190><c> why</c>

00:53:36.599 --> 00:53:36.609 align:start position:0%
have like one more question or so so why
 

00:53:36.609 --> 00:53:39.029 align:start position:0%
have like one more question or so so why
wouldn't<00:53:36.940><c> this</c><00:53:37.029><c> contract</c><00:53:37.660><c> be</c><00:53:37.809><c> vulnerable</c><00:53:38.769><c> to</c>

00:53:39.029 --> 00:53:39.039 align:start position:0%
wouldn't this contract be vulnerable to
 

00:53:39.039 --> 00:53:43.829 align:start position:0%
wouldn't this contract be vulnerable to
reentry<00:53:39.910><c> couldn't</c><00:53:40.420><c> I</c><00:53:40.539><c> just</c><00:53:41.640><c> call</c><00:53:42.640><c> deposit</c><00:53:43.599><c> and</c>

00:53:43.829 --> 00:53:43.839 align:start position:0%
reentry couldn't I just call deposit and
 

00:53:43.839 --> 00:53:47.839 align:start position:0%
reentry couldn't I just call deposit and
send<00:53:44.259><c> in</c><00:53:44.589><c> the</c><00:53:44.619><c> constructor</c><00:53:45.400><c> of</c><00:53:45.549><c> the</c><00:53:45.670><c> contract</c>

00:53:47.839 --> 00:53:47.849 align:start position:0%
send in the constructor of the contract
 

00:53:47.849 --> 00:53:50.880 align:start position:0%
send in the constructor of the contract
yes<00:53:48.849><c> but</c><00:53:49.240><c> if</c><00:53:49.450><c> you</c><00:53:49.569><c> call</c><00:53:49.720><c> seemed</c><00:53:50.140><c> then</c><00:53:50.619><c> it</c><00:53:50.740><c> will</c>

00:53:50.880 --> 00:53:50.890 align:start position:0%
yes but if you call seemed then it will
 

00:53:50.890 --> 00:53:52.349 align:start position:0%
yes but if you call seemed then it will
try<00:53:51.160><c> and</c><00:53:51.279><c> call</c><00:53:51.400><c> you</c><00:53:51.430><c> back</c><00:53:51.670><c> and</c><00:53:51.940><c> because</c><00:53:52.240><c> it's</c>

00:53:52.349 --> 00:53:52.359 align:start position:0%
try and call you back and because it's
 

00:53:52.359 --> 00:53:53.549 align:start position:0%
try and call you back and because it's
in<00:53:52.450><c> the</c><00:53:52.539><c> constructor</c><00:53:53.049><c> you</c><00:53:53.170><c> don't</c><00:53:53.380><c> yet</c><00:53:53.529><c> have</c>

00:53:53.549 --> 00:53:53.559 align:start position:0%
in the constructor you don't yet have
 

00:53:53.559 --> 00:53:55.920 align:start position:0%
in the constructor you don't yet have
any<00:53:53.799><c> code</c><00:53:54.039><c> at</c><00:53:54.339><c> that</c><00:53:54.400><c> address</c><00:53:54.759><c> so</c><00:53:55.269><c> it</c><00:53:55.480><c> won't</c><00:53:55.690><c> be</c>

00:53:55.920 --> 00:53:55.930 align:start position:0%
any code at that address so it won't be
 

00:53:55.930 --> 00:53:58.140 align:start position:0%
any code at that address so it won't be
able<00:53:56.079><c> to</c><00:53:56.230><c> be</c><00:53:56.349><c> reentrant</c><00:53:56.829><c> yeah</c><00:53:57.460><c> the</c><00:53:57.609><c> code</c><00:53:57.819><c> the</c>

00:53:58.140 --> 00:53:58.150 align:start position:0%
able to be reentrant yeah the code the
 

00:53:58.150 --> 00:53:59.700 align:start position:0%
able to be reentrant yeah the code the
way<00:53:58.269><c> that</c><00:53:58.420><c> he</c><00:53:58.509><c> theorem</c><00:53:58.749><c> works</c><00:53:58.869><c> is</c><00:53:59.200><c> that</c><00:53:59.440><c> the</c>

00:53:59.700 --> 00:53:59.710 align:start position:0%
way that he theorem works is that the
 

00:53:59.710 --> 00:54:03.210 align:start position:0%
way that he theorem works is that the
constructor<00:54:00.450><c> returns</c><00:54:01.450><c> a</c><00:54:01.809><c> string</c><00:54:02.259><c> of</c><00:54:02.829><c> evm</c>

00:54:03.210 --> 00:54:03.220 align:start position:0%
constructor returns a string of evm
 

00:54:03.220 --> 00:54:05.069 align:start position:0%
constructor returns a string of evm
bytes<00:54:03.549><c> and</c><00:54:03.849><c> only</c><00:54:04.539><c> at</c><00:54:04.630><c> the</c><00:54:04.690><c> end</c><00:54:04.900><c> of</c><00:54:04.990><c> the</c>

00:54:05.069 --> 00:54:05.079 align:start position:0%
bytes and only at the end of the
 

00:54:05.079 --> 00:54:06.630 align:start position:0%
bytes and only at the end of the
transaction<00:54:05.470><c> or</c><00:54:05.769><c> those</c><00:54:05.980><c> okay</c><00:54:06.220><c> go</c><00:54:06.430><c> to</c><00:54:06.490><c> the</c>

00:54:06.630 --> 00:54:06.640 align:start position:0%
transaction or those okay go to the
 

00:54:06.640 --> 00:54:08.450 align:start position:0%
transaction or those okay go to the
contract<00:54:07.059><c> Thanks</c>

00:54:08.450 --> 00:54:08.460 align:start position:0%
contract Thanks
 

00:54:08.460 --> 00:54:13.559 align:start position:0%
contract Thanks
don't<00:54:09.460><c> have</c><00:54:09.549><c> time</c><00:54:09.700><c> for</c><00:54:09.759><c> one</c><00:54:09.999><c> more</c>

00:54:13.559 --> 00:54:13.569 align:start position:0%
 
 

00:54:13.569 --> 00:54:18.509 align:start position:0%
 
what's<00:54:14.259><c> the</c><00:54:14.499><c> best</c><00:54:14.799><c> way</c><00:54:15.339><c> to</c><00:54:16.740><c> with</c><00:54:17.740><c> transferring</c>

00:54:18.509 --> 00:54:18.519 align:start position:0%
what's the best way to with transferring
 

00:54:18.519 --> 00:54:22.380 align:start position:0%
what's the best way to with transferring
some<00:54:18.880><c> value</c><00:54:19.470><c> to</c><00:54:20.470><c> set</c><00:54:20.710><c> the</c><00:54:20.890><c> gas</c><00:54:21.099><c> limits</c><00:54:21.579><c> the</c>

00:54:22.380 --> 00:54:22.390 align:start position:0%
some value to set the gas limits the
 

00:54:22.390 --> 00:54:24.420 align:start position:0%
some value to set the gas limits the
easiest<00:54:22.720><c> way</c><00:54:22.930><c> is</c><00:54:22.960><c> to</c><00:54:23.230><c> use</c><00:54:23.259><c> dot</c><00:54:23.650><c> transfer</c><00:54:24.130><c> which</c>

00:54:24.420 --> 00:54:24.430 align:start position:0%
easiest way is to use dot transfer which
 

00:54:24.430 --> 00:54:29.450 align:start position:0%
easiest way is to use dot transfer which
saves<00:54:24.700><c> it</c><00:54:24.849><c> to</c><00:54:24.940><c> the</c><00:54:25.029><c> minimum</c><00:54:25.329><c> which</c><00:54:25.569><c> is</c><00:54:25.950><c> 29</c>

00:54:29.450 --> 00:54:29.460 align:start position:0%
 
 

00:54:29.460 --> 00:54:33.120 align:start position:0%
 
Amick<00:54:30.460><c> if</c><00:54:31.119><c> we</c><00:54:31.329><c> want</c><00:54:31.509><c> to</c><00:54:31.720><c> choose</c><00:54:32.109><c> the</c><00:54:32.499><c> limit</c><00:54:32.859><c> and</c>

00:54:33.120 --> 00:54:33.130 align:start position:0%
Amick if we want to choose the limit and
 

00:54:33.130 --> 00:54:36.450 align:start position:0%
Amick if we want to choose the limit and
not<00:54:33.369><c> have</c><00:54:33.670><c> the</c><00:54:33.869><c> 21,000</c><00:54:34.869><c> in</c><00:54:35.019><c> solidity</c><00:54:35.950><c> you</c><00:54:36.249><c> can</c>

00:54:36.450 --> 00:54:36.460 align:start position:0%
not have the 21,000 in solidity you can
 

00:54:36.460 --> 00:54:39.690 align:start position:0%
not have the 21,000 in solidity you can
do<00:54:36.640><c> a</c><00:54:37.269><c> function</c><00:54:37.960><c> named</c><00:54:38.170><c> gas</c><00:54:38.769><c> in</c><00:54:39.069><c> brackets</c><00:54:39.489><c> and</c>

00:54:39.690 --> 00:54:39.700 align:start position:0%
do a function named gas in brackets and
 

00:54:39.700 --> 00:54:41.670 align:start position:0%
do a function named gas in brackets and
then<00:54:39.970><c> second</c><00:54:40.569><c> set</c><00:54:40.720><c> of</c><00:54:40.749><c> parentheses</c><00:54:41.319><c> for</c><00:54:41.589><c> the</c>

00:54:41.670 --> 00:54:41.680 align:start position:0%
then second set of parentheses for the
 

00:54:41.680 --> 00:54:43.529 align:start position:0%
then second set of parentheses for the
function<00:54:42.099><c> arguments</c><00:54:42.579><c> but</c><00:54:42.940><c> the</c><00:54:43.029><c> thing</c><00:54:43.269><c> is</c><00:54:43.299><c> even</c>

00:54:43.529 --> 00:54:43.539 align:start position:0%
function arguments but the thing is even
 

00:54:43.539 --> 00:54:46.380 align:start position:0%
function arguments but the thing is even
if<00:54:43.749><c> you</c><00:54:43.869><c> do</c><00:54:44.019><c> if</c><00:54:44.380><c> you</c><00:54:44.529><c> provide</c><00:54:44.890><c> zero</c><00:54:45.269><c> there</c><00:54:46.269><c> is</c>

00:54:46.380 --> 00:54:46.390 align:start position:0%
if you do if you provide zero there is
 

00:54:46.390 --> 00:54:50.819 align:start position:0%
if you do if you provide zero there is
always<00:54:46.749><c> the</c><00:54:46.950><c> 2300</c><00:54:47.950><c> gas</c><00:54:48.190><c> the</c><00:54:49.349><c> only</c><00:54:50.349><c> sleeping</c>

00:54:50.819 --> 00:54:50.829 align:start position:0%
always the 2300 gas the only sleeping
 

00:54:50.829 --> 00:54:54.359 align:start position:0%
always the 2300 gas the only sleeping
transfer<00:54:51.640><c> value</c><00:54:52.119><c> yeah</c><00:54:52.950><c> you</c><00:54:53.950><c> have</c><00:54:54.039><c> to</c><00:54:54.130><c> send</c><00:54:54.309><c> at</c>

00:54:54.359 --> 00:54:54.369 align:start position:0%
transfer value yeah you have to send at
 

00:54:54.369 --> 00:54:58.049 align:start position:0%
transfer value yeah you have to send at
least<00:54:54.460><c> one</c><00:54:54.670><c> way</c><00:54:54.819><c> yeah</c><00:54:56.549><c> but</c><00:54:57.549><c> generally</c>

00:54:58.049 --> 00:54:58.059 align:start position:0%
least one way yeah but generally
 

00:54:58.059 --> 00:54:59.880 align:start position:0%
least one way yeah but generally
generally<00:54:58.599><c> it's</c><00:54:58.869><c> friendly</c><00:54:59.170><c> just</c><00:54:59.410><c> seemed</c><00:54:59.769><c> at</c>

00:54:59.880 --> 00:54:59.890 align:start position:0%
generally it's friendly just seemed at
 

00:54:59.890 --> 00:55:01.739 align:start position:0%
generally it's friendly just seemed at
least<00:55:00.099><c> 2300</c><00:55:00.789><c> guess</c><00:55:00.970><c> even</c><00:55:01.299><c> if</c><00:55:01.390><c> you</c><00:55:01.450><c> don't</c><00:55:01.599><c> have</c>

00:55:01.739 --> 00:55:01.749 align:start position:0%
least 2300 guess even if you don't have
 

00:55:01.749 --> 00:55:03.329 align:start position:0%
least 2300 guess even if you don't have
to<00:55:01.960><c> because</c><00:55:02.259><c> that</c><00:55:02.289><c> way</c><00:55:02.529><c> they</c><00:55:02.680><c> can</c><00:55:02.799><c> log</c><00:55:02.950><c> events</c>

00:55:03.329 --> 00:55:03.339 align:start position:0%
to because that way they can log events
 

00:55:03.339 --> 00:55:04.979 align:start position:0%
to because that way they can log events
which<00:55:03.549><c> means</c><00:55:03.819><c> you</c><00:55:04.269><c> know</c><00:55:04.390><c> otherwise</c><00:55:04.660><c> it</c><00:55:04.869><c> can</c>

00:55:04.979 --> 00:55:04.989 align:start position:0%
which means you know otherwise it can
 

00:55:04.989 --> 00:55:08.370 align:start position:0%
which means you know otherwise it can
even<00:55:05.109><c> no</c><00:55:05.259><c> effect</c><00:55:05.589><c> whatsoever</c><00:55:06.720><c> I</c><00:55:07.720><c> think</c><00:55:08.259><c> that's</c>

00:55:08.370 --> 00:55:08.380 align:start position:0%
even no effect whatsoever I think that's
 

00:55:08.380 --> 00:55:21.240 align:start position:0%
even no effect whatsoever I think that's
all<00:55:08.499><c> we</c><00:55:08.589><c> have</c><00:55:08.680><c> time</c><00:55:08.859><c> for</c><00:55:08.920><c> yes</c><00:55:09.869><c> thank</c><00:55:10.869><c> you</c><00:55:10.989><c> guys</c>

00:55:21.240 --> 00:55:21.250 align:start position:0%
 
 

00:55:21.250 --> 00:55:23.310 align:start position:0%
 
you

