WEBVTT
Kind: captions
Language: en

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

00:00:06.690 --> 00:00:06.700 align:start position:0%
 
 

00:00:06.700 --> 00:00:09.150 align:start position:0%
 
[Music]

00:00:09.150 --> 00:00:09.160 align:start position:0%
[Music]
 

00:00:09.160 --> 00:00:12.910 align:start position:0%
[Music]
my<00:00:09.480><c> name</c><00:00:09.679><c> is</c><00:00:10.160><c> ganelli</c><00:00:10.920><c> as</c><00:00:11.200><c> he</c><00:00:11.480><c> already</c><00:00:12.480><c> uh</c><00:00:12.599><c> said</c>

00:00:12.910 --> 00:00:12.920 align:start position:0%
my name is ganelli as he already uh said
 

00:00:12.920 --> 00:00:15.270 align:start position:0%
my name is ganelli as he already uh said
I'm<00:00:13.480><c> a</c><00:00:13.679><c> head</c><00:00:13.880><c> of</c><00:00:14.080><c> security</c><00:00:14.480><c> services</c><00:00:14.839><c> at</c><00:00:15.000><c> open</c>

00:00:15.270 --> 00:00:15.280 align:start position:0%
I'm a head of security services at open
 

00:00:15.280 --> 00:00:17.390 align:start position:0%
I'm a head of security services at open
Zeppelin<00:00:15.879><c> I'm</c><00:00:16.279><c> I'm</c><00:00:16.480><c> here</c><00:00:16.680><c> today</c><00:00:16.960><c> to</c><00:00:17.080><c> talk</c><00:00:17.240><c> you</c>

00:00:17.390 --> 00:00:17.400 align:start position:0%
Zeppelin I'm I'm here today to talk you
 

00:00:17.400 --> 00:00:19.509 align:start position:0%
Zeppelin I'm I'm here today to talk you
about<00:00:17.960><c> double</c><00:00:18.240><c> entry</c><00:00:18.520><c> point</c>

00:00:19.509 --> 00:00:19.519 align:start position:0%
about double entry point
 

00:00:19.519 --> 00:00:22.670 align:start position:0%
about double entry point
issues<00:00:20.519><c> so</c><00:00:21.119><c> first</c><00:00:21.439><c> things</c><00:00:21.760><c> first</c><00:00:22.279><c> what</c><00:00:22.400><c> is</c><00:00:22.519><c> the</c>

00:00:22.670 --> 00:00:22.680 align:start position:0%
issues so first things first what is the
 

00:00:22.680 --> 00:00:25.109 align:start position:0%
issues so first things first what is the
double<00:00:22.880><c> entry</c><00:00:23.199><c> point</c><00:00:24.080><c> as</c><00:00:24.199><c> we</c><00:00:24.320><c> all</c><00:00:24.480><c> know</c><00:00:24.800><c> how</c>

00:00:25.109 --> 00:00:25.119 align:start position:0%
double entry point as we all know how
 

00:00:25.119 --> 00:00:28.189 align:start position:0%
double entry point as we all know how
solidity<00:00:25.680><c> Works</c><00:00:26.599><c> um</c><00:00:26.800><c> users</c><00:00:27.279><c> or</c><00:00:27.640><c> protocols</c>

00:00:28.189 --> 00:00:28.199 align:start position:0%
solidity Works um users or protocols
 

00:00:28.199 --> 00:00:30.109 align:start position:0%
solidity Works um users or protocols
interact<00:00:28.679><c> with</c><00:00:28.840><c> contracts</c><00:00:29.240><c> by</c><00:00:29.359><c> knowing</c><00:00:29.720><c> what</c>

00:00:30.109 --> 00:00:30.119 align:start position:0%
interact with contracts by knowing what
 

00:00:30.119 --> 00:00:31.790 align:start position:0%
interact with contracts by knowing what
the<00:00:30.279><c> address</c><00:00:30.679><c> is</c><00:00:30.960><c> so</c><00:00:31.199><c> basically</c><00:00:31.519><c> they</c><00:00:31.640><c> know</c>

00:00:31.790 --> 00:00:31.800 align:start position:0%
the address is so basically they know
 

00:00:31.800 --> 00:00:33.630 align:start position:0%
the address is so basically they know
the<00:00:31.960><c> address</c><00:00:32.200><c> and</c><00:00:32.399><c> that</c><00:00:32.559><c> address</c><00:00:33.160><c> is</c><00:00:33.320><c> pointed</c>

00:00:33.630 --> 00:00:33.640 align:start position:0%
the address and that address is pointed
 

00:00:33.640 --> 00:00:35.750 align:start position:0%
the address and that address is pointed
to<00:00:33.760><c> a</c><00:00:33.879><c> specific</c><00:00:34.239><c> smart</c>

00:00:35.750 --> 00:00:35.760 align:start position:0%
to a specific smart
 

00:00:35.760 --> 00:00:38.549 align:start position:0%
to a specific smart
contract<00:00:36.760><c> a</c><00:00:36.920><c> double</c><00:00:37.160><c> entry</c><00:00:37.480><c> point</c><00:00:38.000><c> happens</c>

00:00:38.549 --> 00:00:38.559 align:start position:0%
contract a double entry point happens
 

00:00:38.559 --> 00:00:40.229 align:start position:0%
contract a double entry point happens
when<00:00:38.960><c> actually</c><00:00:39.320><c> there's</c><00:00:39.559><c> not</c><00:00:39.800><c> only</c><00:00:40.039><c> one</c>

00:00:40.229 --> 00:00:40.239 align:start position:0%
when actually there's not only one
 

00:00:40.239 --> 00:00:41.830 align:start position:0%
when actually there's not only one
address<00:00:40.600><c> that</c><00:00:40.719><c> points</c><00:00:41.000><c> to</c><00:00:41.160><c> that</c><00:00:41.399><c> storage</c><00:00:41.719><c> of</c>

00:00:41.830 --> 00:00:41.840 align:start position:0%
address that points to that storage of
 

00:00:41.840 --> 00:00:43.229 align:start position:0%
address that points to that storage of
the<00:00:41.960><c> contract</c><00:00:42.280><c> but</c><00:00:42.399><c> actually</c><00:00:42.640><c> there's</c><00:00:42.960><c> many</c>

00:00:43.229 --> 00:00:43.239 align:start position:0%
the contract but actually there's many
 

00:00:43.239 --> 00:00:46.830 align:start position:0%
the contract but actually there's many
addresses<00:00:43.920><c> could</c><00:00:44.079><c> be</c><00:00:44.239><c> two</c><00:00:44.480><c> could</c><00:00:44.640><c> be</c><00:00:44.800><c> n</c>

00:00:46.830 --> 00:00:46.840 align:start position:0%
addresses could be two could be n
 

00:00:46.840 --> 00:00:50.590 align:start position:0%
addresses could be two could be n
um<00:00:47.840><c> and</c><00:00:48.199><c> also</c><00:00:48.520><c> protocols</c><00:00:49.000><c> can</c><00:00:49.239><c> talk</c><00:00:49.760><c> to</c><00:00:50.480><c> uh</c>

00:00:50.590 --> 00:00:50.600 align:start position:0%
um and also protocols can talk to uh
 

00:00:50.600 --> 00:00:52.549 align:start position:0%
um and also protocols can talk to uh
these<00:00:50.800><c> double</c><00:00:51.039><c> entry</c><00:00:51.280><c> points</c><00:00:51.480><c> so</c><00:00:51.680><c> not</c><00:00:51.800><c> only</c>

00:00:52.549 --> 00:00:52.559 align:start position:0%
these double entry points so not only
 

00:00:52.559 --> 00:00:55.029 align:start position:0%
these double entry points so not only
not<00:00:52.719><c> only</c><00:00:53.480><c> uh</c><00:00:53.600><c> users</c><00:00:54.039><c> but</c><00:00:54.199><c> also</c><00:00:54.399><c> protocols</c><00:00:54.920><c> but</c>

00:00:55.029 --> 00:00:55.039 align:start position:0%
not only uh users but also protocols but
 

00:00:55.039 --> 00:00:56.869 align:start position:0%
not only uh users but also protocols but
also<00:00:55.280><c> tokens</c><00:00:55.719><c> but</c><00:00:55.920><c> basically</c><00:00:56.440><c> anything</c><00:00:56.719><c> that</c>

00:00:56.869 --> 00:00:56.879 align:start position:0%
also tokens but basically anything that
 

00:00:56.879 --> 00:00:58.549 align:start position:0%
also tokens but basically anything that
can<00:00:57.039><c> interact</c><00:00:57.480><c> with</c><00:00:57.840><c> an</c><00:00:58.039><c> address</c><00:00:58.399><c> can</c>

00:00:58.549 --> 00:00:58.559 align:start position:0%
can interact with an address can
 

00:00:58.559 --> 00:01:00.910 align:start position:0%
can interact with an address can
interact<00:00:58.960><c> with</c><00:00:59.079><c> a</c><00:00:59.239><c> contract</c><00:01:00.039><c> that</c><00:01:00.480><c> can</c><00:01:00.719><c> have</c>

00:01:00.910 --> 00:01:00.920 align:start position:0%
interact with a contract that can have
 

00:01:00.920 --> 00:01:04.270 align:start position:0%
interact with a contract that can have
more<00:01:01.120><c> than</c><00:01:01.320><c> one</c><00:01:01.640><c> entry</c><00:01:02.440><c> point</c><00:01:03.440><c> this</c><00:01:03.760><c> can</c><00:01:04.000><c> have</c>

00:01:04.270 --> 00:01:04.280 align:start position:0%
more than one entry point this can have
 

00:01:04.280 --> 00:01:06.270 align:start position:0%
more than one entry point this can have
a<00:01:04.439><c> couple</c><00:01:04.680><c> of</c><00:01:04.960><c> problems</c><00:01:05.400><c> which</c><00:01:05.519><c> are</c><00:01:06.080><c> um</c>

00:01:06.270 --> 00:01:06.280 align:start position:0%
a couple of problems which are um
 

00:01:06.280 --> 00:01:08.350 align:start position:0%
a couple of problems which are um
unclear<00:01:06.680><c> to</c><00:01:06.880><c> end</c><00:01:07.080><c> users</c><00:01:07.479><c> to</c><00:01:07.680><c> which</c><00:01:07.960><c> contract</c>

00:01:08.350 --> 00:01:08.360 align:start position:0%
unclear to end users to which contract
 

00:01:08.360 --> 00:01:10.550 align:start position:0%
unclear to end users to which contract
they<00:01:08.439><c> should</c><00:01:08.680><c> be</c><00:01:08.840><c> talking</c><00:01:09.200><c> to</c><00:01:10.040><c> um</c><00:01:10.159><c> and</c><00:01:10.320><c> clear</c>

00:01:10.550 --> 00:01:10.560 align:start position:0%
they should be talking to um and clear
 

00:01:10.560 --> 00:01:12.630 align:start position:0%
they should be talking to um and clear
to<00:01:10.840><c> protocols</c><00:01:11.840><c> uh</c><00:01:11.960><c> which</c><00:01:12.119><c> contracts</c><00:01:12.560><c> they</c>

00:01:12.630 --> 00:01:12.640 align:start position:0%
to protocols uh which contracts they
 

00:01:12.640 --> 00:01:14.230 align:start position:0%
to protocols uh which contracts they
should<00:01:12.799><c> be</c><00:01:12.920><c> interacting</c><00:01:13.479><c> with</c><00:01:13.880><c> when</c><00:01:14.040><c> they're</c>

00:01:14.230 --> 00:01:14.240 align:start position:0%
should be interacting with when they're
 

00:01:14.240 --> 00:01:16.670 align:start position:0%
should be interacting with when they're
integrating<00:01:15.200><c> based</c><00:01:15.560><c> on</c><00:01:15.680><c> the</c><00:01:15.799><c> fact</c><00:01:16.119><c> that</c>

00:01:16.670 --> 00:01:16.680 align:start position:0%
integrating based on the fact that
 

00:01:16.680 --> 00:01:18.190 align:start position:0%
integrating based on the fact that
basically<00:01:17.200><c> all</c><00:01:17.400><c> smart</c><00:01:17.720><c> contracts</c><00:01:18.080><c> are</c>

00:01:18.190 --> 00:01:18.200 align:start position:0%
basically all smart contracts are
 

00:01:18.200 --> 00:01:19.590 align:start position:0%
basically all smart contracts are
interacting<00:01:18.680><c> with</c><00:01:18.799><c> other</c><00:01:19.000><c> smart</c><00:01:19.240><c> contracts</c>

00:01:19.590 --> 00:01:19.600 align:start position:0%
interacting with other smart contracts
 

00:01:19.600 --> 00:01:21.510 align:start position:0%
interacting with other smart contracts
all<00:01:19.720><c> the</c><00:01:19.880><c> time</c><00:01:20.520><c> and</c><00:01:20.680><c> that</c><00:01:20.840><c> introduces</c>

00:01:21.510 --> 00:01:21.520 align:start position:0%
all the time and that introduces
 

00:01:21.520 --> 00:01:22.870 align:start position:0%
all the time and that introduces
security<00:01:21.960><c> caveats</c><00:01:22.360><c> that</c><00:01:22.439><c> we're</c><00:01:22.560><c> going</c><00:01:22.640><c> to</c><00:01:22.720><c> see</c>

00:01:22.870 --> 00:01:22.880 align:start position:0%
security caveats that we're going to see
 

00:01:22.880 --> 00:01:26.190 align:start position:0%
security caveats that we're going to see
now<00:01:23.040><c> with</c><00:01:23.159><c> some</c><00:01:23.720><c> examples</c><00:01:24.720><c> so</c><00:01:25.240><c> first</c><00:01:25.560><c> case</c>

00:01:26.190 --> 00:01:26.200 align:start position:0%
now with some examples so first case
 

00:01:26.200 --> 00:01:28.830 align:start position:0%
now with some examples so first case
compound<00:01:26.960><c> 2022</c><00:01:27.960><c> um</c><00:01:28.119><c> this</c><00:01:28.200><c> was</c><00:01:28.360><c> an</c><00:01:28.479><c> issue</c><00:01:28.720><c> that</c>

00:01:28.830 --> 00:01:28.840 align:start position:0%
compound 2022 um this was an issue that
 

00:01:28.840 --> 00:01:31.789 align:start position:0%
compound 2022 um this was an issue that
we<00:01:28.960><c> found</c><00:01:29.240><c> at</c><00:01:29.320><c> the</c><00:01:29.439><c> beginning</c><00:01:29.640><c> of</c><00:01:30.119><c> 22</c><00:01:31.119><c> uh</c><00:01:31.280><c> in</c><00:01:31.600><c> a</c>

00:01:31.789 --> 00:01:31.799 align:start position:0%
we found at the beginning of 22 uh in a
 

00:01:31.799 --> 00:01:35.670 align:start position:0%
we found at the beginning of 22 uh in a
token<00:01:32.360><c> named</c><00:01:32.840><c> uh</c><00:01:33.000><c> TUSD</c><00:01:33.960><c> this</c><00:01:34.159><c> T</c><00:01:34.640><c> USD</c><00:01:35.079><c> token</c><00:01:35.439><c> had</c>

00:01:35.670 --> 00:01:35.680 align:start position:0%
token named uh TUSD this T USD token had
 

00:01:35.680 --> 00:01:37.950 align:start position:0%
token named uh TUSD this T USD token had
two<00:01:36.280><c> entry</c><00:01:36.640><c> points</c><00:01:36.920><c> so</c><00:01:37.119><c> basically</c><00:01:37.560><c> anyone</c>

00:01:37.950 --> 00:01:37.960 align:start position:0%
two entry points so basically anyone
 

00:01:37.960 --> 00:01:39.429 align:start position:0%
two entry points so basically anyone
would<00:01:38.119><c> be</c><00:01:38.240><c> able</c><00:01:38.439><c> to</c><00:01:38.720><c> for</c><00:01:38.840><c> example</c><00:01:39.119><c> if</c><00:01:39.200><c> you</c><00:01:39.320><c> want</c>

00:01:39.429 --> 00:01:39.439 align:start position:0%
would be able to for example if you want
 

00:01:39.439 --> 00:01:42.190 align:start position:0%
would be able to for example if you want
to<00:01:39.560><c> transfer</c><00:01:40.119><c> some</c><00:01:40.320><c> of</c><00:01:40.520><c> your</c><00:01:41.159><c> gusd</c><00:01:41.799><c> tokens</c>

00:01:42.190 --> 00:01:42.200 align:start position:0%
to transfer some of your gusd tokens
 

00:01:42.200 --> 00:01:44.510 align:start position:0%
to transfer some of your gusd tokens
from<00:01:42.439><c> one</c><00:01:42.680><c> address</c><00:01:43.560><c> uh</c><00:01:43.640><c> to</c><00:01:43.840><c> the</c><00:01:43.960><c> other</c><00:01:44.399><c> you</c>

00:01:44.510 --> 00:01:44.520 align:start position:0%
from one address uh to the other you
 

00:01:44.520 --> 00:01:46.350 align:start position:0%
from one address uh to the other you
could<00:01:44.680><c> use</c><00:01:45.000><c> any</c><00:01:45.200><c> of</c><00:01:45.399><c> the</c><00:01:45.560><c> two</c><00:01:45.880><c> entry</c><00:01:46.079><c> points</c>

00:01:46.350 --> 00:01:46.360 align:start position:0%
could use any of the two entry points
 

00:01:46.360 --> 00:01:48.469 align:start position:0%
could use any of the two entry points
that<00:01:46.520><c> you</c><00:01:47.119><c> had</c><00:01:47.560><c> and</c><00:01:47.719><c> how</c><00:01:47.880><c> it</c><00:01:48.000><c> worked</c><00:01:48.320><c> the</c>

00:01:48.469 --> 00:01:48.479 align:start position:0%
that you had and how it worked the
 

00:01:48.479 --> 00:01:50.109 align:start position:0%
that you had and how it worked the
Legacy<00:01:48.880><c> address</c><00:01:49.159><c> they</c><00:01:49.320><c> did</c><00:01:49.600><c> some</c><00:01:49.799><c> kind</c><00:01:49.960><c> of</c>

00:01:50.109 --> 00:01:50.119 align:start position:0%
Legacy address they did some kind of
 

00:01:50.119 --> 00:01:53.429 align:start position:0%
Legacy address they did some kind of
migration<00:01:51.000><c> this</c><00:01:51.200><c> Legacy</c><00:01:51.640><c> address</c><00:01:52.360><c> would</c><00:01:53.240><c> uh</c>

00:01:53.429 --> 00:01:53.439 align:start position:0%
migration this Legacy address would uh
 

00:01:53.439 --> 00:01:55.069 align:start position:0%
migration this Legacy address would uh
when<00:01:53.600><c> you</c><00:01:53.719><c> talk</c><00:01:54.000><c> to</c><00:01:54.159><c> the</c><00:01:54.240><c> transfer</c><00:01:54.640><c> function</c>

00:01:55.069 --> 00:01:55.079 align:start position:0%
when you talk to the transfer function
 

00:01:55.079 --> 00:01:58.149 align:start position:0%
when you talk to the transfer function
would<00:01:56.079><c> uh</c><00:01:56.240><c> forward</c><00:01:56.680><c> the</c><00:01:57.360><c> transfer</c><00:01:57.799><c> function</c>

00:01:58.149 --> 00:01:58.159 align:start position:0%
would uh forward the transfer function
 

00:01:58.159 --> 00:02:01.389 align:start position:0%
would uh forward the transfer function
to<00:01:58.719><c> the</c><00:01:58.840><c> new</c><00:01:59.079><c> contract</c><00:01:59.560><c> and</c><00:01:59.960><c> the</c><00:02:00.079><c> same</c><00:02:00.719><c> with</c>

00:02:01.389 --> 00:02:01.399 align:start position:0%
to the new contract and the same with
 

00:02:01.399 --> 00:02:05.310 align:start position:0%
to the new contract and the same with
all<00:02:01.640><c> the</c><00:02:02.399><c> um</c><00:02:03.119><c> functions</c><00:02:03.520><c> def</c><00:02:03.680><c> finded</c><00:02:03.799><c> in</c><00:02:03.920><c> the</c>

00:02:05.310 --> 00:02:05.320 align:start position:0%
all the um functions def finded in the
 

00:02:05.320 --> 00:02:07.550 align:start position:0%
all the um functions def finded in the
contract<00:02:06.320><c> and</c><00:02:06.560><c> again</c><00:02:06.799><c> as</c><00:02:06.920><c> I</c><00:02:07.039><c> said</c><00:02:07.240><c> not</c><00:02:07.360><c> only</c>

00:02:07.550 --> 00:02:07.560 align:start position:0%
contract and again as I said not only
 

00:02:07.560 --> 00:02:09.389 align:start position:0%
contract and again as I said not only
with<00:02:07.680><c> users</c><00:02:08.119><c> also</c><00:02:08.360><c> with</c><00:02:08.520><c> protocols</c><00:02:09.119><c> and</c><00:02:09.280><c> the</c>

00:02:09.389 --> 00:02:09.399 align:start position:0%
with users also with protocols and the
 

00:02:09.399 --> 00:02:11.670 align:start position:0%
with users also with protocols and the
case<00:02:09.640><c> was</c><00:02:10.000><c> compound</c><00:02:10.440><c> the</c><00:02:10.560><c> C</c><00:02:10.800><c> token</c><00:02:11.200><c> contract</c>

00:02:11.670 --> 00:02:11.680 align:start position:0%
case was compound the C token contract
 

00:02:11.680 --> 00:02:13.910 align:start position:0%
case was compound the C token contract
had<00:02:11.800><c> a</c><00:02:11.920><c> Swip</c><00:02:12.239><c> token</c><00:02:12.560><c> function</c><00:02:13.360><c> that</c><00:02:13.520><c> had</c><00:02:13.720><c> here</c>

00:02:13.910 --> 00:02:13.920 align:start position:0%
had a Swip token function that had here
 

00:02:13.920 --> 00:02:16.030 align:start position:0%
had a Swip token function that had here
a<00:02:14.080><c> required</c><00:02:14.480><c> statement</c><00:02:15.040><c> that</c><00:02:15.160><c> you</c><00:02:15.280><c> can</c><00:02:15.440><c> see</c>

00:02:16.030 --> 00:02:16.040 align:start position:0%
a required statement that you can see
 

00:02:16.040 --> 00:02:18.110 align:start position:0%
a required statement that you can see
that<00:02:16.160><c> would</c><00:02:16.319><c> check</c><00:02:16.599><c> that</c><00:02:16.800><c> the</c><00:02:17.000><c> address</c><00:02:18.000><c> uh</c>

00:02:18.110 --> 00:02:18.120 align:start position:0%
that would check that the address uh
 

00:02:18.120 --> 00:02:19.589 align:start position:0%
that would check that the address uh
that<00:02:18.239><c> you</c><00:02:18.319><c> want</c><00:02:18.440><c> to</c><00:02:18.560><c> sweep</c><00:02:18.920><c> the</c><00:02:19.040><c> typical</c><00:02:19.319><c> sweep</c>

00:02:19.589 --> 00:02:19.599 align:start position:0%
that you want to sweep the typical sweep
 

00:02:19.599 --> 00:02:21.509 align:start position:0%
that you want to sweep the typical sweep
token<00:02:19.959><c> that</c><00:02:20.519><c> sweep</c><00:02:20.800><c> token</c><00:02:21.040><c> function</c><00:02:21.319><c> that</c><00:02:21.440><c> you</c>

00:02:21.509 --> 00:02:21.519 align:start position:0%
token that sweep token function that you
 

00:02:21.519 --> 00:02:23.509 align:start position:0%
token that sweep token function that you
want<00:02:21.680><c> to</c><00:02:21.840><c> like</c><00:02:22.000><c> remove</c><00:02:22.519><c> certain</c><00:02:22.920><c> tokens</c><00:02:23.239><c> of</c><00:02:23.400><c> a</c>

00:02:23.509 --> 00:02:23.519 align:start position:0%
want to like remove certain tokens of a
 

00:02:23.519 --> 00:02:25.750 align:start position:0%
want to like remove certain tokens of a
specific<00:02:23.920><c> contract</c><00:02:24.720><c> will'll</c><00:02:24.959><c> check</c><00:02:25.160><c> that</c><00:02:25.360><c> the</c>

00:02:25.750 --> 00:02:25.760 align:start position:0%
specific contract will'll check that the
 

00:02:25.760 --> 00:02:27.390 align:start position:0%
specific contract will'll check that the
address<00:02:26.080><c> that</c><00:02:26.239><c> you're</c><00:02:26.400><c> sending</c><00:02:27.000><c> was</c><00:02:27.160><c> in</c><00:02:27.319><c> the</c>

00:02:27.390 --> 00:02:27.400 align:start position:0%
address that you're sending was in the
 

00:02:27.400 --> 00:02:30.509 align:start position:0%
address that you're sending was in the
underline<00:02:27.840><c> so</c><00:02:28.000><c> if</c><00:02:28.080><c> you</c><00:02:28.239><c> have</c><00:02:28.480><c> the</c><00:02:28.920><c> c</c><00:02:29.319><c> t</c><00:02:29.560><c> us</c><00:02:30.080><c> D</c>

00:02:30.509 --> 00:02:30.519 align:start position:0%
underline so if you have the c t us D
 

00:02:30.519 --> 00:02:32.949 align:start position:0%
underline so if you have the c t us D
token<00:02:30.879><c> and</c><00:02:31.000><c> you</c><00:02:31.160><c> want</c><00:02:31.319><c> to</c><00:02:31.879><c> sweep</c><00:02:32.400><c> all</c><00:02:32.560><c> the</c><00:02:32.720><c> T</c>

00:02:32.949 --> 00:02:32.959 align:start position:0%
token and you want to sweep all the T
 

00:02:32.959 --> 00:02:34.670 align:start position:0%
token and you want to sweep all the T
USD<00:02:33.319><c> tokens</c><00:02:33.720><c> you</c><00:02:33.800><c> shouldn't</c><00:02:34.080><c> be</c><00:02:34.200><c> able</c><00:02:34.360><c> to</c><00:02:34.519><c> do</c>

00:02:34.670 --> 00:02:34.680 align:start position:0%
USD tokens you shouldn't be able to do
 

00:02:34.680 --> 00:02:36.270 align:start position:0%
USD tokens you shouldn't be able to do
that<00:02:34.879><c> but</c><00:02:35.000><c> if</c><00:02:35.080><c> you</c><00:02:35.239><c> want</c><00:02:35.400><c> to</c><00:02:35.519><c> sweep</c><00:02:35.879><c> the</c><00:02:36.000><c> DI</c>

00:02:36.270 --> 00:02:36.280 align:start position:0%
that but if you want to sweep the DI
 

00:02:36.280 --> 00:02:37.910 align:start position:0%
that but if you want to sweep the DI
tokens<00:02:36.879><c> you</c><00:02:36.959><c> should</c><00:02:37.160><c> be</c><00:02:37.280><c> able</c><00:02:37.440><c> to</c><00:02:37.560><c> do</c><00:02:37.680><c> that</c><00:02:37.800><c> and</c>

00:02:37.910 --> 00:02:37.920 align:start position:0%
tokens you should be able to do that and
 

00:02:37.920 --> 00:02:39.710 align:start position:0%
tokens you should be able to do that and
send<00:02:38.080><c> it</c><00:02:38.200><c> to</c><00:02:38.280><c> the</c><00:02:38.400><c> admin</c><00:02:38.680><c> of</c><00:02:38.920><c> the</c><00:02:39.440><c> of</c><00:02:39.599><c> the</c>

00:02:39.710 --> 00:02:39.720 align:start position:0%
send it to the admin of the of the
 

00:02:39.720 --> 00:02:41.229 align:start position:0%
send it to the admin of the of the
contract<00:02:40.040><c> that</c><00:02:40.159><c> I</c><00:02:40.239><c> think</c><00:02:40.360><c> it</c><00:02:40.480><c> was</c><00:02:40.599><c> the</c><00:02:40.720><c> time</c><00:02:40.920><c> Lo</c>

00:02:41.229 --> 00:02:41.239 align:start position:0%
contract that I think it was the time Lo
 

00:02:41.239 --> 00:02:44.229 align:start position:0%
contract that I think it was the time Lo
button<00:02:42.239><c> um</c><00:02:42.800><c> the</c><00:02:42.959><c> problem</c><00:02:43.239><c> is</c><00:02:43.519><c> that</c><00:02:44.080><c> the</c>

00:02:44.229 --> 00:02:44.239 align:start position:0%
button um the problem is that the
 

00:02:44.239 --> 00:02:45.990 align:start position:0%
button um the problem is that the
underlying<00:02:44.720><c> could</c><00:02:44.879><c> be</c><00:02:45.000><c> two</c><00:02:45.200><c> addresses</c><00:02:45.720><c> so</c>

00:02:45.990 --> 00:02:46.000 align:start position:0%
underlying could be two addresses so
 

00:02:46.000 --> 00:02:47.589 align:start position:0%
underlying could be two addresses so
actually<00:02:46.200><c> you</c><00:02:46.319><c> can</c><00:02:46.519><c> call</c><00:02:46.840><c> this</c><00:02:47.000><c> function</c>

00:02:47.589 --> 00:02:47.599 align:start position:0%
actually you can call this function
 

00:02:47.599 --> 00:02:49.670 align:start position:0%
actually you can call this function
bypass<00:02:48.239><c> the</c><00:02:48.440><c> required</c><00:02:48.879><c> statement</c><00:02:49.519><c> and</c>

00:02:49.670 --> 00:02:49.680 align:start position:0%
bypass the required statement and
 

00:02:49.680 --> 00:02:51.470 align:start position:0%
bypass the required statement and
actually<00:02:49.959><c> move</c><00:02:50.319><c> all</c><00:02:50.480><c> the</c><00:02:50.599><c> funds</c><00:02:51.040><c> that</c><00:02:51.159><c> were</c><00:02:51.360><c> in</c>

00:02:51.470 --> 00:02:51.480 align:start position:0%
actually move all the funds that were in
 

00:02:51.480 --> 00:02:54.949 align:start position:0%
actually move all the funds that were in
the<00:02:51.640><c> C</c><00:02:51.920><c> token</c><00:02:52.239><c> or</c><00:02:52.440><c> the</c><00:02:52.640><c> CT</c><00:02:53.040><c> USC</c><00:02:53.920><c> contract</c><00:02:54.800><c> back</c>

00:02:54.949 --> 00:02:54.959 align:start position:0%
the C token or the CT USC contract back
 

00:02:54.959 --> 00:02:57.869 align:start position:0%
the C token or the CT USC contract back
to<00:02:55.120><c> the</c><00:02:55.239><c> admin</c><00:02:56.080><c> basically</c><00:02:56.560><c> creating</c><00:02:57.000><c> chaos</c>

00:02:57.869 --> 00:02:57.879 align:start position:0%
to the admin basically creating chaos
 

00:02:57.879 --> 00:02:59.830 align:start position:0%
to the admin basically creating chaos
one<00:02:58.000><c> of</c><00:02:58.200><c> the</c><00:02:58.400><c> or</c><00:02:58.560><c> a</c><00:02:58.640><c> couple</c><00:02:58.840><c> of</c><00:02:58.959><c> things</c><00:02:59.159><c> that</c><00:02:59.560><c> uh</c>

00:02:59.830 --> 00:02:59.840 align:start position:0%
one of the or a couple of things that uh
 

00:02:59.840 --> 00:03:01.470 align:start position:0%
one of the or a couple of things that uh
we<00:02:59.920><c> saw</c><00:03:00.080><c> that</c><00:03:00.200><c> happen</c><00:03:00.519><c> is</c><00:03:00.640><c> that</c><00:03:00.840><c> the</c><00:03:01.000><c> C</c><00:03:01.239><c> token</c>

00:03:01.470 --> 00:03:01.480 align:start position:0%
we saw that happen is that the C token
 

00:03:01.480 --> 00:03:04.110 align:start position:0%
we saw that happen is that the C token
to<00:03:01.720><c> token</c><00:03:02.040><c> price</c><00:03:02.599><c> got</c><00:03:02.920><c> completely</c><00:03:03.400><c> screwed</c><00:03:03.840><c> so</c>

00:03:04.110 --> 00:03:04.120 align:start position:0%
to token price got completely screwed so
 

00:03:04.120 --> 00:03:07.789 align:start position:0%
to token price got completely screwed so
any<00:03:04.319><c> Mint</c><00:03:04.640><c> or</c><00:03:04.799><c> any</c><00:03:05.000><c> burn</c><00:03:05.920><c> uh</c><00:03:06.040><c> would</c><00:03:06.280><c> account</c><00:03:06.879><c> uh</c>

00:03:07.789 --> 00:03:07.799 align:start position:0%
any Mint or any burn uh would account uh
 

00:03:07.799 --> 00:03:10.789 align:start position:0%
any Mint or any burn uh would account uh
wrongly<00:03:08.799><c> um</c><00:03:09.280><c> and</c><00:03:09.480><c> also</c><00:03:10.000><c> there</c><00:03:10.200><c> was</c><00:03:10.640><c> the</c>

00:03:10.789 --> 00:03:10.799 align:start position:0%
wrongly um and also there was the
 

00:03:10.799 --> 00:03:12.470 align:start position:0%
wrongly um and also there was the
possibility<00:03:11.200><c> to</c><00:03:11.319><c> steal</c><00:03:11.640><c> funds</c><00:03:11.959><c> from</c><00:03:12.120><c> the</c><00:03:12.239><c> pool</c>

00:03:12.470 --> 00:03:12.480 align:start position:0%
possibility to steal funds from the pool
 

00:03:12.480 --> 00:03:13.789 align:start position:0%
possibility to steal funds from the pool
because<00:03:12.680><c> all</c><00:03:12.799><c> the</c><00:03:12.920><c> calculations</c><00:03:13.400><c> were</c><00:03:13.640><c> me</c>

00:03:13.789 --> 00:03:13.799 align:start position:0%
because all the calculations were me
 

00:03:13.799 --> 00:03:16.550 align:start position:0%
because all the calculations were me
wrong<00:03:14.000><c> so</c><00:03:14.159><c> if</c><00:03:14.239><c> an</c><00:03:14.400><c> attacker</c><00:03:14.799><c> would</c><00:03:15.680><c> uh</c><00:03:15.879><c> send</c><00:03:16.360><c> a</c>

00:03:16.550 --> 00:03:16.560 align:start position:0%
wrong so if an attacker would uh send a
 

00:03:16.560 --> 00:03:19.070 align:start position:0%
wrong so if an attacker would uh send a
transaction<00:03:17.000><c> to</c><00:03:17.120><c> the</c><00:03:17.239><c> sweep</c><00:03:17.560><c> token</c><00:03:18.319><c> function</c>

00:03:19.070 --> 00:03:19.080 align:start position:0%
transaction to the sweep token function
 

00:03:19.080 --> 00:03:22.110 align:start position:0%
transaction to the sweep token function
to<00:03:19.560><c> reduce</c><00:03:20.560><c> uh</c><00:03:20.640><c> to</c><00:03:20.879><c> zero</c><00:03:21.440><c> the</c><00:03:21.640><c> underlying</c>

00:03:22.110 --> 00:03:22.120 align:start position:0%
to reduce uh to zero the underlying
 

00:03:22.120 --> 00:03:24.229 align:start position:0%
to reduce uh to zero the underlying
token<00:03:22.440><c> balance</c><00:03:23.000><c> and</c><00:03:23.200><c> then</c><00:03:23.680><c> touch</c><00:03:23.959><c> a</c><00:03:24.040><c> little</c>

00:03:24.229 --> 00:03:24.239 align:start position:0%
token balance and then touch a little
 

00:03:24.239 --> 00:03:26.149 align:start position:0%
token balance and then touch a little
bit<00:03:24.480><c> what</c><00:03:24.599><c> was</c><00:03:24.799><c> happening</c><00:03:25.120><c> in</c><00:03:25.319><c> the</c><00:03:25.640><c> like</c>

00:03:26.149 --> 00:03:26.159 align:start position:0%
bit what was happening in the like
 

00:03:26.159 --> 00:03:27.630 align:start position:0%
bit what was happening in the like
sendat<00:03:26.640><c> transactions</c><00:03:27.000><c> to</c><00:03:27.159><c> other</c><00:03:27.319><c> functions</c>

00:03:27.630 --> 00:03:27.640 align:start position:0%
sendat transactions to other functions
 

00:03:27.640 --> 00:03:30.229 align:start position:0%
sendat transactions to other functions
would<00:03:27.799><c> have</c><00:03:27.920><c> been</c><00:03:28.080><c> able</c><00:03:28.360><c> to</c><00:03:29.080><c> uh</c><00:03:29.200><c> steal</c><00:03:29.480><c> around</c>

00:03:30.229 --> 00:03:30.239 align:start position:0%
would have been able to uh steal around
 

00:03:30.239 --> 00:03:34.710 align:start position:0%
would have been able to uh steal around
50<00:03:30.519><c> million</c><00:03:31.519><c> uh</c><00:03:32.040><c> dollars</c><00:03:33.040><c> second</c><00:03:33.400><c> case</c><00:03:33.920><c> 2024</c>

00:03:34.710 --> 00:03:34.720 align:start position:0%
50 million uh dollars second case 2024
 

00:03:34.720 --> 00:03:37.509 align:start position:0%
50 million uh dollars second case 2024
un<00:03:35.040><c> of</c><00:03:35.360><c> before</c><00:03:35.840><c> we</c><00:03:36.280><c> did</c><00:03:36.480><c> an</c><00:03:36.640><c> audit</c><00:03:36.879><c> for</c><00:03:37.000><c> the</c><00:03:37.120><c> V4</c>

00:03:37.509 --> 00:03:37.519 align:start position:0%
un of before we did an audit for the V4
 

00:03:37.519 --> 00:03:42.070 align:start position:0%
un of before we did an audit for the V4
core<00:03:38.000><c> code</c><00:03:39.000><c> and</c><00:03:39.319><c> we</c><00:03:39.519><c> found</c><00:03:40.519><c> that</c><00:03:41.519><c> uh</c><00:03:41.640><c> the</c><00:03:41.840><c> case</c>

00:03:42.070 --> 00:03:42.080 align:start position:0%
core code and we found that uh the case
 

00:03:42.080 --> 00:03:43.910 align:start position:0%
core code and we found that uh the case
was<00:03:42.360><c> with</c><00:03:42.599><c> another</c><00:03:43.120><c> representation</c><00:03:43.680><c> of</c>

00:03:43.910 --> 00:03:43.920 align:start position:0%
was with another representation of
 

00:03:43.920 --> 00:03:45.869 align:start position:0%
was with another representation of
double<00:03:44.159><c> entry</c><00:03:44.439><c> points</c><00:03:44.799><c> that</c><00:03:44.959><c> happens</c><00:03:45.319><c> not</c><00:03:45.640><c> not</c>

00:03:45.869 --> 00:03:45.879 align:start position:0%
double entry points that happens not not
 

00:03:45.879 --> 00:03:47.270 align:start position:0%
double entry points that happens not not
when<00:03:46.000><c> you</c><00:03:46.120><c> have</c><00:03:46.280><c> two</c><00:03:46.480><c> addresses</c><00:03:46.879><c> but</c><00:03:47.040><c> when</c><00:03:47.159><c> you</c>

00:03:47.270 --> 00:03:47.280 align:start position:0%
when you have two addresses but when you
 

00:03:47.280 --> 00:03:49.750 align:start position:0%
when you have two addresses but when you
have<00:03:47.360><c> a</c><00:03:47.480><c> native</c><00:03:47.920><c> token</c><00:03:48.519><c> and</c><00:03:48.680><c> an</c><00:03:48.840><c> erc20</c>

00:03:49.750 --> 00:03:49.760 align:start position:0%
have a native token and an erc20
 

00:03:49.760 --> 00:03:52.270 align:start position:0%
have a native token and an erc20
representation<00:03:50.360><c> of</c><00:03:50.519><c> that</c><00:03:50.680><c> erc20</c><00:03:51.400><c> token</c><00:03:52.120><c> and</c>

00:03:52.270 --> 00:03:52.280 align:start position:0%
representation of that erc20 token and
 

00:03:52.280 --> 00:03:54.710 align:start position:0%
representation of that erc20 token and
basically<00:03:52.799><c> users</c><00:03:53.239><c> can</c><00:03:53.439><c> interact</c><00:03:53.920><c> with</c><00:03:54.159><c> both</c>

00:03:54.710 --> 00:03:54.720 align:start position:0%
basically users can interact with both
 

00:03:54.720 --> 00:03:57.270 align:start position:0%
basically users can interact with both
at<00:03:54.959><c> will</c><00:03:55.280><c> as</c><00:03:55.400><c> well</c><00:03:55.519><c> as</c><00:03:55.760><c> protocols</c><00:03:56.760><c> unisoft</c>

00:03:57.270 --> 00:03:57.280 align:start position:0%
at will as well as protocols unisoft
 

00:03:57.280 --> 00:03:58.350 align:start position:0%
at will as well as protocols unisoft
we're<00:03:57.439><c> not</c><00:03:57.599><c> going</c><00:03:57.680><c> to</c><00:03:57.840><c> talk</c><00:03:58.000><c> much</c><00:03:58.200><c> about</c>

00:03:58.350 --> 00:03:58.360 align:start position:0%
we're not going to talk much about
 

00:03:58.360 --> 00:04:00.229 align:start position:0%
we're not going to talk much about
unisoft<00:03:58.760><c> because</c><00:03:58.920><c> it's</c><00:03:59.120><c> very</c><00:03:59.439><c> uh</c><00:03:59.799><c> complex</c><00:04:00.120><c> but</c>

00:04:00.229 --> 00:04:00.239 align:start position:0%
unisoft because it's very uh complex but
 

00:04:00.239 --> 00:04:01.630 align:start position:0%
unisoft because it's very uh complex but
there's<00:04:00.400><c> a</c><00:04:00.519><c> settle</c><00:04:00.840><c> function</c><00:04:01.159><c> the</c><00:04:01.319><c> SLE</c>

00:04:01.630 --> 00:04:01.640 align:start position:0%
there's a settle function the SLE
 

00:04:01.640 --> 00:04:05.030 align:start position:0%
there's a settle function the SLE
functions<00:04:02.079><c> allows</c><00:04:03.040><c> uh</c><00:04:03.239><c> users</c><00:04:03.720><c> basically</c><00:04:04.159><c> to</c>

00:04:05.030 --> 00:04:05.040 align:start position:0%
functions allows uh users basically to
 

00:04:05.040 --> 00:04:07.030 align:start position:0%
functions allows uh users basically to
uh<00:04:05.200><c> modify</c><00:04:05.640><c> their</c><00:04:05.840><c> account</c><00:04:06.120><c> Deltas</c><00:04:06.680><c> which</c><00:04:06.840><c> is</c>

00:04:07.030 --> 00:04:07.040 align:start position:0%
uh modify their account Deltas which is
 

00:04:07.040 --> 00:04:08.190 align:start position:0%
uh modify their account Deltas which is
basically<00:04:07.400><c> the</c><00:04:07.480><c> amount</c><00:04:07.680><c> of</c><00:04:07.799><c> money</c><00:04:08.000><c> that</c><00:04:08.079><c> they</c>

00:04:08.190 --> 00:04:08.200 align:start position:0%
basically the amount of money that they
 

00:04:08.200 --> 00:04:10.550 align:start position:0%
basically the amount of money that they
hold<00:04:08.400><c> in</c><00:04:08.519><c> there</c><00:04:08.640><c> in</c><00:04:08.720><c> the</c><00:04:08.840><c> pool</c><00:04:09.159><c> manager</c><00:04:10.159><c> um</c><00:04:10.400><c> at</c>

00:04:10.550 --> 00:04:10.560 align:start position:0%
hold in there in the pool manager um at
 

00:04:10.560 --> 00:04:13.069 align:start position:0%
hold in there in the pool manager um at
will<00:04:10.920><c> by</c><00:04:11.239><c> by</c><00:04:11.599><c> adding</c><00:04:12.120><c> tokens</c><00:04:12.480><c> or</c><00:04:12.680><c> removing</c>

00:04:13.069 --> 00:04:13.079 align:start position:0%
will by by adding tokens or removing
 

00:04:13.079 --> 00:04:17.189 align:start position:0%
will by by adding tokens or removing
tokens<00:04:13.920><c> and</c><00:04:14.159><c> it</c><00:04:14.360><c> has</c><00:04:15.000><c> this</c><00:04:15.639><c> if</c><00:04:16.639><c> statement</c><00:04:17.040><c> that</c>

00:04:17.189 --> 00:04:17.199 align:start position:0%
tokens and it has this if statement that
 

00:04:17.199 --> 00:04:19.629 align:start position:0%
tokens and it has this if statement that
actually<00:04:17.440><c> checks</c><00:04:18.320><c> uh</c><00:04:18.440><c> if</c><00:04:18.560><c> the</c><00:04:18.720><c> currency</c><00:04:19.519><c> that</c>

00:04:19.629 --> 00:04:19.639 align:start position:0%
actually checks uh if the currency that
 

00:04:19.639 --> 00:04:21.030 align:start position:0%
actually checks uh if the currency that
we<00:04:19.759><c> want</c><00:04:19.919><c> to</c><00:04:20.079><c> interact</c><00:04:20.479><c> with</c><00:04:20.639><c> in</c><00:04:20.759><c> the</c><00:04:20.840><c> pool</c>

00:04:21.030 --> 00:04:21.040 align:start position:0%
we want to interact with in the pool
 

00:04:21.040 --> 00:04:23.189 align:start position:0%
we want to interact with in the pool
manager<00:04:21.759><c> is</c><00:04:21.959><c> the</c><00:04:22.079><c> native</c><00:04:22.440><c> token</c><00:04:22.759><c> and</c><00:04:22.919><c> if</c><00:04:23.040><c> it's</c>

00:04:23.189 --> 00:04:23.199 align:start position:0%
manager is the native token and if it's
 

00:04:23.199 --> 00:04:25.070 align:start position:0%
manager is the native token and if it's
not<00:04:23.360><c> the</c><00:04:23.759><c> native</c><00:04:24.080><c> token</c><00:04:24.360><c> it</c><00:04:24.479><c> will</c><00:04:24.639><c> enter</c><00:04:24.880><c> to</c>

00:04:25.070 --> 00:04:25.080 align:start position:0%
not the native token it will enter to
 

00:04:25.080 --> 00:04:27.430 align:start position:0%
not the native token it will enter to
the<00:04:25.199><c> lse</c><00:04:25.440><c> so</c><00:04:25.639><c> basically</c><00:04:26.560><c> uh</c><00:04:26.680><c> we</c><00:04:26.800><c> can</c><00:04:26.960><c> interact</c>

00:04:27.430 --> 00:04:27.440 align:start position:0%
the lse so basically uh we can interact
 

00:04:27.440 --> 00:04:31.749 align:start position:0%
the lse so basically uh we can interact
with<00:04:27.880><c> another</c><00:04:28.240><c> entry</c><00:04:28.520><c> point</c><00:04:29.880><c> and</c><00:04:30.880><c> an</c><00:04:31.120><c> attacker</c>

00:04:31.749 --> 00:04:31.759 align:start position:0%
with another entry point and an attacker
 

00:04:31.759 --> 00:04:34.510 align:start position:0%
with another entry point and an attacker
could<00:04:32.000><c> call</c><00:04:32.360><c> the</c><00:04:32.720><c> sync</c><00:04:33.600><c> function</c><00:04:34.039><c> selling</c><00:04:34.360><c> the</c>

00:04:34.510 --> 00:04:34.520 align:start position:0%
could call the sync function selling the
 

00:04:34.520 --> 00:04:36.510 align:start position:0%
could call the sync function selling the
CEO<00:04:34.919><c> address</c><00:04:35.360><c> the</c><00:04:35.520><c> issue</c><00:04:35.800><c> was</c><00:04:36.039><c> actually</c><00:04:36.360><c> with</c>

00:04:36.510 --> 00:04:36.520 align:start position:0%
CEO address the issue was actually with
 

00:04:36.520 --> 00:04:38.110 align:start position:0%
CEO address the issue was actually with
the<00:04:36.919><c> I</c><00:04:37.000><c> didn't</c><00:04:37.240><c> mention</c><00:04:37.479><c> it</c><00:04:37.600><c> but</c><00:04:37.720><c> it</c><00:04:37.800><c> was</c><00:04:38.000><c> with</c>

00:04:38.110 --> 00:04:38.120 align:start position:0%
the I didn't mention it but it was with
 

00:04:38.120 --> 00:04:42.070 align:start position:0%
the I didn't mention it but it was with
the<00:04:38.280><c> CEO</c><00:04:39.280><c> uh</c><00:04:39.440><c> token</c><00:04:39.960><c> address</c><00:04:40.960><c> um</c><00:04:41.560><c> basically</c><00:04:41.919><c> to</c>

00:04:42.070 --> 00:04:42.080 align:start position:0%
the CEO uh token address um basically to
 

00:04:42.080 --> 00:04:43.990 align:start position:0%
the CEO uh token address um basically to
put<00:04:42.199><c> in</c><00:04:42.360><c> transient</c><00:04:42.880><c> storage</c><00:04:43.320><c> the</c><00:04:43.440><c> CEO</c><00:04:43.759><c> address</c>

00:04:43.990 --> 00:04:44.000 align:start position:0%
put in transient storage the CEO address
 

00:04:44.000 --> 00:04:46.230 align:start position:0%
put in transient storage the CEO address
to<00:04:44.160><c> then</c><00:04:44.280><c> interact</c><00:04:44.639><c> and</c><00:04:44.800><c> do</c><00:04:44.919><c> other</c><00:04:45.240><c> operations</c>

00:04:46.230 --> 00:04:46.240 align:start position:0%
to then interact and do other operations
 

00:04:46.240 --> 00:04:47.909 align:start position:0%
to then interact and do other operations
uh<00:04:46.440><c> then</c><00:04:46.880><c> they</c><00:04:47.039><c> could</c><00:04:47.240><c> call</c><00:04:47.440><c> the</c><00:04:47.560><c> sell</c>

00:04:47.909 --> 00:04:47.919 align:start position:0%
uh then they could call the sell
 

00:04:47.919 --> 00:04:49.270 align:start position:0%
uh then they could call the sell
function<00:04:48.240><c> that</c><00:04:48.360><c> would</c><00:04:48.520><c> enter</c><00:04:48.759><c> to</c><00:04:48.919><c> the</c><00:04:49.039><c> if</c>

00:04:49.270 --> 00:04:49.280 align:start position:0%
function that would enter to the if
 

00:04:49.280 --> 00:04:52.070 align:start position:0%
function that would enter to the if
statement<00:04:50.280><c> and</c><00:04:50.639><c> account</c><00:04:51.160><c> the</c><00:04:51.520><c> value</c><00:04:51.960><c> that</c>

00:04:52.070 --> 00:04:52.080 align:start position:0%
statement and account the value that
 

00:04:52.080 --> 00:04:53.790 align:start position:0%
statement and account the value that
you're<00:04:52.240><c> sending</c><00:04:52.560><c> as</c><00:04:52.680><c> a</c><00:04:52.840><c> parameter</c><00:04:53.280><c> as</c><00:04:53.440><c> the</c><00:04:53.600><c> new</c>

00:04:53.790 --> 00:04:53.800 align:start position:0%
you're sending as a parameter as the new
 

00:04:53.800 --> 00:04:56.029 align:start position:0%
you're sending as a parameter as the new
account<00:04:54.039><c> Delta</c><00:04:54.360><c> so</c><00:04:54.520><c> the</c><00:04:54.680><c> new</c><00:04:55.440><c> uh</c><00:04:55.560><c> balance</c><00:04:55.880><c> of</c>

00:04:56.029 --> 00:04:56.039 align:start position:0%
account Delta so the new uh balance of
 

00:04:56.039 --> 00:04:59.110 align:start position:0%
account Delta so the new uh balance of
the<00:04:56.240><c> user</c><00:04:57.240><c> and</c><00:04:57.440><c> then</c><00:04:57.919><c> call</c><00:04:58.320><c> the</c><00:04:58.479><c> other</c><00:04:58.720><c> SLE</c>

00:04:59.110 --> 00:04:59.120 align:start position:0%
the user and then call the other SLE
 

00:04:59.120 --> 00:05:00.590 align:start position:0%
the user and then call the other SLE
function<00:04:59.720><c> I</c><00:04:59.759><c> mean</c><00:04:59.919><c> is</c><00:05:00.039><c> the</c><00:05:00.160><c> same</c><00:05:00.320><c> setle</c>

00:05:00.590 --> 00:05:00.600 align:start position:0%
function I mean is the same setle
 

00:05:00.600 --> 00:05:04.189 align:start position:0%
function I mean is the same setle
function<00:05:00.840><c> but</c><00:05:00.960><c> we</c><00:05:01.120><c> enter</c><00:05:01.360><c> to</c><00:05:01.600><c> the</c><00:05:02.120><c> else</c><00:05:03.120><c> um</c>

00:05:04.189 --> 00:05:04.199 align:start position:0%
function but we enter to the else um
 

00:05:04.199 --> 00:05:06.469 align:start position:0%
function but we enter to the else um
statement<00:05:05.199><c> and</c><00:05:05.360><c> we'll</c><00:05:05.680><c> basically</c><00:05:06.199><c> account</c>

00:05:06.469 --> 00:05:06.479 align:start position:0%
statement and we'll basically account
 

00:05:06.479 --> 00:05:09.790 align:start position:0%
statement and we'll basically account
for<00:05:06.639><c> 20</c><00:05:06.960><c> tokens</c><00:05:07.479><c> instead</c><00:05:07.800><c> of</c><00:05:08.080><c> 10</c><00:05:09.080><c> uh</c><00:05:09.560><c> and</c><00:05:09.680><c> in</c>

00:05:09.790 --> 00:05:09.800 align:start position:0%
for 20 tokens instead of 10 uh and in
 

00:05:09.800 --> 00:05:11.510 align:start position:0%
for 20 tokens instead of 10 uh and in
the<00:05:09.919><c> end</c><00:05:10.120><c> the</c><00:05:10.240><c> user</c><00:05:10.520><c> would</c><00:05:10.680><c> only</c><00:05:10.919><c> deposit</c><00:05:11.280><c> 10</c>

00:05:11.510 --> 00:05:11.520 align:start position:0%
the end the user would only deposit 10
 

00:05:11.520 --> 00:05:14.790 align:start position:0%
the end the user would only deposit 10
tokens<00:05:12.479><c> but</c><00:05:12.759><c> get</c><00:05:12.919><c> a</c><00:05:13.039><c> balance</c><00:05:13.400><c> of</c><00:05:13.680><c> 20</c><00:05:14.240><c> and</c><00:05:14.400><c> then</c>

00:05:14.790 --> 00:05:14.800 align:start position:0%
tokens but get a balance of 20 and then
 

00:05:14.800 --> 00:05:16.790 align:start position:0%
tokens but get a balance of 20 and then
this<00:05:15.000><c> same</c><00:05:15.199><c> user</c><00:05:15.560><c> could</c><00:05:16.280><c> without</c><00:05:16.560><c> any</c>

00:05:16.790 --> 00:05:16.800 align:start position:0%
this same user could without any
 

00:05:16.800 --> 00:05:19.670 align:start position:0%
this same user could without any
problems<00:05:17.400><c> take</c><00:05:18.160><c> that</c><00:05:18.280><c> money</c><00:05:18.520><c> from</c><00:05:18.720><c> the</c><00:05:18.840><c> pool</c>

00:05:19.670 --> 00:05:19.680 align:start position:0%
problems take that money from the pool
 

00:05:19.680 --> 00:05:22.710 align:start position:0%
problems take that money from the pool
if<00:05:20.000><c> they</c><00:05:20.759><c> do</c><00:05:21.120><c> this</c><00:05:21.560><c> many</c><00:05:21.880><c> times</c><00:05:22.199><c> or</c><00:05:22.360><c> if</c><00:05:22.560><c> they</c>

00:05:22.710 --> 00:05:22.720 align:start position:0%
if they do this many times or if they
 

00:05:22.720 --> 00:05:26.230 align:start position:0%
if they do this many times or if they
use<00:05:23.400><c> higher</c><00:05:23.880><c> values</c><00:05:24.600><c> that</c><00:05:24.759><c> is</c><00:05:24.919><c> not</c><00:05:25.120><c> 10</c><00:05:26.000><c> uh</c><00:05:26.120><c> they</c>

00:05:26.230 --> 00:05:26.240 align:start position:0%
use higher values that is not 10 uh they
 

00:05:26.240 --> 00:05:30.629 align:start position:0%
use higher values that is not 10 uh they
could<00:05:26.400><c> drain</c><00:05:26.680><c> the</c><00:05:26.800><c> pool</c><00:05:27.560><c> so</c><00:05:27.800><c> in</c><00:05:28.280><c> V3</c><00:05:29.280><c> um</c><00:05:29.840><c> CEO</c><00:05:30.360><c> has</c>

00:05:30.629 --> 00:05:30.639 align:start position:0%
could drain the pool so in V3 um CEO has
 

00:05:30.639 --> 00:05:35.790 align:start position:0%
could drain the pool so in V3 um CEO has
like<00:05:30.759><c> $15</c><00:05:31.680><c> million</c><00:05:32.680><c> of</c><00:05:32.880><c> TBL</c><00:05:33.479><c> I</c><00:05:33.600><c> believe</c><00:05:34.479><c> and</c><00:05:35.440><c> if</c>

00:05:35.790 --> 00:05:35.800 align:start position:0%
like $15 million of TBL I believe and if
 

00:05:35.800 --> 00:05:37.749 align:start position:0%
like $15 million of TBL I believe and if
they<00:05:35.919><c> were</c><00:05:36.160><c> to</c><00:05:36.319><c> migrate</c><00:05:36.680><c> things</c><00:05:36.919><c> from</c><00:05:37.120><c> B3</c><00:05:37.440><c> to</c>

00:05:37.749 --> 00:05:37.759 align:start position:0%
they were to migrate things from B3 to
 

00:05:37.759 --> 00:05:40.749 align:start position:0%
they were to migrate things from B3 to
B4<00:05:38.759><c> uh</c><00:05:38.880><c> it</c><00:05:38.960><c> would</c><00:05:39.160><c> have</c><00:05:39.400><c> costed</c><00:05:39.720><c> around</c><00:05:39.919><c> $50</c>

00:05:40.749 --> 00:05:40.759 align:start position:0%
B4 uh it would have costed around $50
 

00:05:40.759 --> 00:05:45.710 align:start position:0%
B4 uh it would have costed around $50
million<00:05:41.759><c> uh</c><00:05:41.919><c> of</c><00:05:42.600><c> losses</c><00:05:43.600><c> so</c><00:05:44.000><c> time</c><00:05:44.720><c> takeaways</c>

00:05:45.710 --> 00:05:45.720 align:start position:0%
million uh of losses so time takeaways
 

00:05:45.720 --> 00:05:47.230 align:start position:0%
million uh of losses so time takeaways
first<00:05:45.919><c> of</c><00:05:46.039><c> all</c><00:05:46.520><c> this</c><00:05:46.600><c> is</c><00:05:46.720><c> an</c><00:05:46.840><c> issue</c><00:05:47.039><c> that</c><00:05:47.120><c> we</c>

00:05:47.230 --> 00:05:47.240 align:start position:0%
first of all this is an issue that we
 

00:05:47.240 --> 00:05:50.870 align:start position:0%
first of all this is an issue that we
found<00:05:47.400><c> in</c><00:05:47.520><c> 2022</c><00:05:48.400><c> 2022</c><00:05:49.360><c> also</c><00:05:49.600><c> in</c><00:05:49.720><c> 2024</c><00:05:50.600><c> it's</c><00:05:50.720><c> an</c>

00:05:50.870 --> 00:05:50.880 align:start position:0%
found in 2022 2022 also in 2024 it's an
 

00:05:50.880 --> 00:05:52.670 align:start position:0%
found in 2022 2022 also in 2024 it's an
issue<00:05:51.120><c> that</c><00:05:51.280><c> can</c><00:05:51.479><c> still</c><00:05:51.840><c> happen</c><00:05:52.319><c> because</c><00:05:52.560><c> it</c>

00:05:52.670 --> 00:05:52.680 align:start position:0%
issue that can still happen because it
 

00:05:52.680 --> 00:05:54.029 align:start position:0%
issue that can still happen because it
doesn't<00:05:52.960><c> depend</c><00:05:53.199><c> of</c><00:05:53.360><c> our</c><00:05:53.560><c> protocol</c><00:05:53.960><c> it</c>

00:05:54.029 --> 00:05:54.039 align:start position:0%
doesn't depend of our protocol it
 

00:05:54.039 --> 00:05:55.590 align:start position:0%
doesn't depend of our protocol it
depends<00:05:54.240><c> on</c><00:05:54.400><c> other</c><00:05:54.600><c> protocols</c><00:05:54.960><c> that</c><00:05:55.039><c> we</c><00:05:55.160><c> inate</c>

00:05:55.590 --> 00:05:55.600 align:start position:0%
depends on other protocols that we inate
 

00:05:55.600 --> 00:05:58.029 align:start position:0%
depends on other protocols that we inate
with<00:05:56.440><c> um</c><00:05:56.600><c> so</c><00:05:56.759><c> we</c><00:05:56.880><c> should</c><00:05:57.080><c> never</c><00:05:57.360><c> trust</c><00:05:57.840><c> any</c>

00:05:58.029 --> 00:05:58.039 align:start position:0%
with um so we should never trust any
 

00:05:58.039 --> 00:06:00.029 align:start position:0%
with um so we should never trust any
protocol<00:05:58.400><c> or</c><00:05:58.680><c> or</c><00:05:59.080><c> token</c><00:05:59.360><c> that</c><00:05:59.479><c> we</c><00:05:59.680><c> interact</c>

00:06:00.029 --> 00:06:00.039 align:start position:0%
protocol or or token that we interact
 

00:06:00.039 --> 00:06:03.309 align:start position:0%
protocol or or token that we interact
with<00:06:00.919><c> um</c><00:06:01.280><c> always</c><00:06:01.600><c> double</c><00:06:01.919><c> check</c><00:06:02.600><c> that</c><00:06:03.000><c> when</c><00:06:03.160><c> we</c>

00:06:03.309 --> 00:06:03.319 align:start position:0%
with um always double check that when we
 

00:06:03.319 --> 00:06:05.350 align:start position:0%
with um always double check that when we
integrate<00:06:03.840><c> with</c><00:06:04.080><c> a</c><00:06:04.240><c> protocol</c><00:06:04.639><c> or</c><00:06:04.759><c> a</c><00:06:04.919><c> token</c><00:06:05.240><c> it</c>

00:06:05.350 --> 00:06:05.360 align:start position:0%
integrate with a protocol or a token it
 

00:06:05.360 --> 00:06:07.189 align:start position:0%
integrate with a protocol or a token it
doesn't<00:06:05.639><c> have</c><00:06:05.759><c> a</c><00:06:05.960><c> double</c><00:06:06.160><c> entry</c><00:06:06.479><c> point</c><00:06:07.039><c> and</c>

00:06:07.189 --> 00:06:07.199 align:start position:0%
doesn't have a double entry point and
 

00:06:07.199 --> 00:06:09.749 align:start position:0%
doesn't have a double entry point and
actually<00:06:07.440><c> if</c><00:06:07.599><c> we</c><00:06:07.759><c> do</c><00:06:08.520><c> we</c><00:06:08.960><c> have</c><00:06:09.120><c> to</c><00:06:09.319><c> also</c><00:06:09.560><c> check</c>

00:06:09.749 --> 00:06:09.759 align:start position:0%
actually if we do we have to also check
 

00:06:09.759 --> 00:06:12.430 align:start position:0%
actually if we do we have to also check
and<00:06:10.080><c> code</c><00:06:10.400><c> in</c><00:06:10.520><c> a</c><00:06:10.680><c> defensive</c><00:06:11.199><c> way</c><00:06:11.720><c> so</c><00:06:12.000><c> that</c><00:06:12.280><c> if</c>

00:06:12.430 --> 00:06:12.440 align:start position:0%
and code in a defensive way so that if
 

00:06:12.440 --> 00:06:15.589 align:start position:0%
and code in a defensive way so that if
they<00:06:12.720><c> introduce</c><00:06:13.720><c> uh</c><00:06:13.840><c> a</c><00:06:14.000><c> double</c><00:06:14.240><c> entry</c><00:06:14.599><c> point</c>

00:06:15.589 --> 00:06:15.599 align:start position:0%
they introduce uh a double entry point
 

00:06:15.599 --> 00:06:17.230 align:start position:0%
they introduce uh a double entry point
we<00:06:15.720><c> can</c><00:06:15.840><c> account</c><00:06:16.080><c> for</c><00:06:16.280><c> that</c><00:06:16.560><c> and</c><00:06:16.919><c> we</c><00:06:17.039><c> don't</c>

00:06:17.230 --> 00:06:17.240 align:start position:0%
we can account for that and we don't
 

00:06:17.240 --> 00:06:19.629 align:start position:0%
we can account for that and we don't
have<00:06:17.639><c> issues</c><00:06:18.639><c> and</c><00:06:18.840><c> that's</c><00:06:19.000><c> all</c><00:06:19.319><c> thank</c><00:06:19.479><c> you</c>

00:06:19.629 --> 00:06:19.639 align:start position:0%
have issues and that's all thank you
 

00:06:19.639 --> 00:06:24.070 align:start position:0%
have issues and that's all thank you
very

00:06:24.070 --> 00:06:24.080 align:start position:0%
 
 

00:06:24.080 --> 00:06:26.830 align:start position:0%
 
much<00:06:25.080><c> thank</c><00:06:25.240><c> you</c><00:06:25.400><c> H</c><00:06:25.840><c> and</c><00:06:26.080><c> thank</c><00:06:26.240><c> you</c><00:06:26.400><c> again</c><00:06:26.599><c> for</c>

00:06:26.830 --> 00:06:26.840 align:start position:0%
much thank you H and thank you again for
 

00:06:26.840 --> 00:06:28.830 align:start position:0%
much thank you H and thank you again for
all<00:06:27.360><c> all</c><00:06:27.520><c> that</c><00:06:27.680><c> you</c><00:06:27.759><c> are</c><00:06:27.919><c> doing</c><00:06:28.199><c> for</c><00:06:28.680><c> the</c>

00:06:28.830 --> 00:06:28.840 align:start position:0%
all all that you are doing for the
 

00:06:28.840 --> 00:06:30.550 align:start position:0%
all all that you are doing for the
security<00:06:29.240><c> of</c><00:06:29.360><c> our</c>

00:06:30.550 --> 00:06:30.560 align:start position:0%
security of our
 

00:06:30.560 --> 00:06:33.749 align:start position:0%
security of our
apps<00:06:31.560><c> okay</c><00:06:32.080><c> we</c><00:06:32.240><c> have</c><00:06:32.360><c> the</c><00:06:32.520><c> full</c><00:06:32.759><c> room</c><00:06:33.240><c> almost</c>

00:06:33.749 --> 00:06:33.759 align:start position:0%
apps okay we have the full room almost
 

00:06:33.759 --> 00:06:35.670 align:start position:0%
apps okay we have the full room almost
so<00:06:34.319><c> I</c><00:06:34.479><c> expect</c><00:06:34.720><c> some</c><00:06:34.919><c> questions</c><00:06:35.280><c> raise</c><00:06:35.520><c> your</c>

00:06:35.670 --> 00:06:35.680 align:start position:0%
so I expect some questions raise your
 

00:06:35.680 --> 00:06:41.189 align:start position:0%
so I expect some questions raise your
hand

00:06:41.189 --> 00:06:41.199 align:start position:0%
 
 

00:06:41.199 --> 00:06:43.390 align:start position:0%
 
please<00:06:42.199><c> you</c><00:06:42.319><c> can</c><00:06:42.520><c> just</c><00:06:42.680><c> say</c><00:06:42.880><c> something</c><00:06:43.160><c> nice</c>

00:06:43.390 --> 00:06:43.400 align:start position:0%
please you can just say something nice
 

00:06:43.400 --> 00:06:45.749 align:start position:0%
please you can just say something nice
to<00:06:43.520><c> the</c><00:06:43.639><c> speaker</c><00:06:44.000><c> that's</c><00:06:44.199><c> also</c>

00:06:45.749 --> 00:06:45.759 align:start position:0%
to the speaker that's also
 

00:06:45.759 --> 00:06:47.550 align:start position:0%
to the speaker that's also
accepted<00:06:46.759><c> are</c><00:06:46.840><c> you</c><00:06:46.960><c> going</c><00:06:47.039><c> to</c><00:06:47.160><c> say</c><00:06:47.319><c> something</c>

00:06:47.550 --> 00:06:47.560 align:start position:0%
accepted are you going to say something
 

00:06:47.560 --> 00:06:50.350 align:start position:0%
accepted are you going to say something
nice<00:06:47.759><c> or</c><00:06:47.919><c> you</c><00:06:48.039><c> have</c><00:06:48.160><c> a</c><00:06:48.680><c> question</c><00:06:49.680><c> let's</c><00:06:49.880><c> see</c>

00:06:50.350 --> 00:06:50.360 align:start position:0%
nice or you have a question let's see
 

00:06:50.360 --> 00:06:51.950 align:start position:0%
nice or you have a question let's see
let's

00:06:51.950 --> 00:06:51.960 align:start position:0%
let's
 

00:06:51.960 --> 00:06:55.990 align:start position:0%
let's
see<00:06:52.960><c> yeah</c><00:06:53.160><c> hello</c><00:06:53.919><c> so</c><00:06:54.199><c> with</c><00:06:54.319><c> the</c><00:06:54.479><c> raise</c><00:06:54.960><c> of</c><00:06:55.520><c> AI</c>

00:06:55.990 --> 00:06:56.000 align:start position:0%
see yeah hello so with the raise of AI
 

00:06:56.000 --> 00:06:59.270 align:start position:0%
see yeah hello so with the raise of AI
that<00:06:56.319><c> can</c><00:06:56.919><c> create</c><00:06:57.319><c> code</c><00:06:58.080><c> how</c><00:06:58.240><c> do</c><00:06:58.360><c> you</c><00:06:58.560><c> think</c><00:06:58.960><c> AI</c>

00:06:59.270 --> 00:06:59.280 align:start position:0%
that can create code how do you think AI
 

00:06:59.280 --> 00:07:03.270 align:start position:0%
that can create code how do you think AI
will<00:06:59.639><c> will</c><00:07:00.199><c> uh</c><00:07:00.479><c> blend</c><00:07:00.879><c> into</c><00:07:01.240><c> the</c>

00:07:03.270 --> 00:07:03.280 align:start position:0%
will will uh blend into the
 

00:07:03.280 --> 00:07:05.189 align:start position:0%
will will uh blend into the
development<00:07:04.280><c> how</c><00:07:04.440><c> would</c><00:07:04.599><c> you</c><00:07:04.720><c> blend</c><00:07:05.039><c> this</c>

00:07:05.189 --> 00:07:05.199 align:start position:0%
development how would you blend this
 

00:07:05.199 --> 00:07:06.869 align:start position:0%
development how would you blend this
into<00:07:05.520><c> development</c><00:07:06.080><c> with</c><00:07:06.240><c> AI</c><00:07:06.560><c> yeah</c><00:07:06.639><c> how</c><00:07:06.759><c> how</c>

00:07:06.869 --> 00:07:06.879 align:start position:0%
into development with AI yeah how how
 

00:07:06.879 --> 00:07:09.629 align:start position:0%
into development with AI yeah how how
you<00:07:07.000><c> going</c><00:07:07.080><c> to</c><00:07:07.240><c> use</c><00:07:07.560><c> AI</c><00:07:08.000><c> to</c><00:07:08.440><c> basically</c><00:07:09.080><c> secure</c>

00:07:09.629 --> 00:07:09.639 align:start position:0%
you going to use AI to basically secure
 

00:07:09.639 --> 00:07:12.469 align:start position:0%
you going to use AI to basically secure
check<00:07:10.039><c> the</c><00:07:10.560><c> system</c><00:07:11.560><c> it's</c><00:07:11.720><c> a</c><00:07:11.879><c> good</c><00:07:12.080><c> question</c>

00:07:12.469 --> 00:07:12.479 align:start position:0%
check the system it's a good question
 

00:07:12.479 --> 00:07:14.950 align:start position:0%
check the system it's a good question
you<00:07:12.639><c> can</c><00:07:13.080><c> like</c><00:07:13.319><c> write</c><00:07:13.720><c> rules</c><00:07:14.440><c> around</c><00:07:14.800><c> the</c>

00:07:14.950 --> 00:07:14.960 align:start position:0%
you can like write rules around the
 

00:07:14.960 --> 00:07:17.710 align:start position:0%
you can like write rules around the
things<00:07:15.199><c> that</c><00:07:15.400><c> you</c><00:07:15.919><c> want</c><00:07:16.400><c> to</c><00:07:16.680><c> check</c><00:07:17.160><c> around</c>

00:07:17.710 --> 00:07:17.720 align:start position:0%
things that you want to check around
 

00:07:17.720 --> 00:07:20.710 align:start position:0%
things that you want to check around
double<00:07:18.039><c> entry</c><00:07:18.440><c> points</c><00:07:18.759><c> and</c><00:07:18.960><c> put</c><00:07:19.120><c> it</c><00:07:19.280><c> in</c><00:07:19.479><c> an</c><00:07:19.759><c> llm</c>

00:07:20.710 --> 00:07:20.720 align:start position:0%
double entry points and put it in an llm
 

00:07:20.720 --> 00:07:23.309 align:start position:0%
double entry points and put it in an llm
to<00:07:20.919><c> learn</c><00:07:21.240><c> from</c><00:07:21.479><c> different</c><00:07:21.879><c> code</c><00:07:22.160><c> bases</c><00:07:23.160><c> and</c>

00:07:23.309 --> 00:07:23.319 align:start position:0%
to learn from different code bases and
 

00:07:23.319 --> 00:07:25.070 align:start position:0%
to learn from different code bases and
maybe<00:07:23.639><c> check</c><00:07:24.039><c> if</c><00:07:24.160><c> they</c><00:07:24.319><c> have</c><00:07:24.440><c> a</c><00:07:24.560><c> double</c><00:07:24.800><c> entry</c>

00:07:25.070 --> 00:07:25.080 align:start position:0%
maybe check if they have a double entry
 

00:07:25.080 --> 00:07:28.510 align:start position:0%
maybe check if they have a double entry
point<00:07:25.360><c> issue</c><00:07:25.919><c> you</c><00:07:26.039><c> could</c><00:07:26.199><c> also</c><00:07:26.400><c> use</c><00:07:26.599><c> a</c><00:07:26.960><c> ITC</c><00:07:27.960><c> if</c>

00:07:28.510 --> 00:07:28.520 align:start position:0%
point issue you could also use a ITC if
 

00:07:28.520 --> 00:07:30.909 align:start position:0%
point issue you could also use a ITC if
storage<00:07:29.039><c> is</c><00:07:29.240><c> mod</c><00:07:29.639><c> ified</c><00:07:29.960><c> by</c><00:07:30.120><c> more</c><00:07:30.319><c> than</c><00:07:30.440><c> two</c>

00:07:30.909 --> 00:07:30.919 align:start position:0%
storage is mod ified by more than two
 

00:07:30.919 --> 00:07:36.390 align:start position:0%
storage is mod ified by more than two
addresses<00:07:31.919><c> um</c><00:07:32.240><c> out</c><00:07:32.520><c> there</c><00:07:32.879><c> I</c>

00:07:36.390 --> 00:07:36.400 align:start position:0%
 
 

00:07:36.400 --> 00:07:40.469 align:start position:0%
 
guess<00:07:37.400><c> okay</c><00:07:37.599><c> thanks</c><00:07:37.759><c> for</c><00:07:37.919><c> the</c><00:07:38.080><c> question</c>

00:07:40.469 --> 00:07:40.479 align:start position:0%
guess okay thanks for the question
 

00:07:40.479 --> 00:07:43.710 align:start position:0%
guess okay thanks for the question
more<00:07:41.479><c> yes</c><00:07:41.720><c> there</c><00:07:41.919><c> in</c><00:07:42.000><c> the</c>

00:07:43.710 --> 00:07:43.720 align:start position:0%
more yes there in the
 

00:07:43.720 --> 00:07:45.830 align:start position:0%
more yes there in the
back

00:07:45.830 --> 00:07:45.840 align:start position:0%
back
 

00:07:45.840 --> 00:07:49.550 align:start position:0%
back
in<00:07:46.840><c> um</c><00:07:47.479><c> thank</c><00:07:47.639><c> you</c><00:07:48.240><c> what</c><00:07:48.560><c> I</c><00:07:48.720><c> want</c><00:07:48.919><c> to</c><00:07:49.199><c> ask</c><00:07:49.400><c> is</c>

00:07:49.550 --> 00:07:49.560 align:start position:0%
in um thank you what I want to ask is
 

00:07:49.560 --> 00:07:53.029 align:start position:0%
in um thank you what I want to ask is
there<00:07:49.720><c> are</c><00:07:50.159><c> many</c><00:07:51.159><c> like</c><00:07:51.400><c> special</c><00:07:51.840><c> tokens</c><00:07:52.840><c> like</c>

00:07:53.029 --> 00:07:53.039 align:start position:0%
there are many like special tokens like
 

00:07:53.039 --> 00:07:57.749 align:start position:0%
there are many like special tokens like
this<00:07:53.280><c> double</c><00:07:54.080><c> entry</c><00:07:55.080><c> some</c><00:07:55.360><c> with</c><00:07:55.680><c> hooks</c><00:07:56.680><c> so</c><00:07:57.639><c> why</c>

00:07:57.749 --> 00:07:57.759 align:start position:0%
this double entry some with hooks so why
 

00:07:57.759 --> 00:08:00.749 align:start position:0%
this double entry some with hooks so why
is<00:07:57.919><c> there</c><00:07:58.199><c> not</c><00:07:58.599><c> like</c><00:07:59.120><c> any</c><00:07:59.599><c> framework</c><00:08:00.360><c> that</c>

00:08:00.749 --> 00:08:00.759 align:start position:0%
is there not like any framework that
 

00:08:00.759 --> 00:08:04.749 align:start position:0%
is there not like any framework that
kind<00:08:01.039><c> of</c><00:08:02.120><c> specify</c><00:08:03.120><c> like</c><00:08:03.440><c> testing</c><00:08:04.039><c> tokens</c><00:08:04.520><c> like</c>

00:08:04.749 --> 00:08:04.759 align:start position:0%
kind of specify like testing tokens like
 

00:08:04.759 --> 00:08:07.309 align:start position:0%
kind of specify like testing tokens like
these<00:08:04.960><c> ones</c><00:08:05.639><c> so</c><00:08:05.919><c> like</c><00:08:06.120><c> do</c><00:08:06.360><c> fasting</c><00:08:06.879><c> or</c><00:08:07.120><c> this</c>

00:08:07.309 --> 00:08:07.319 align:start position:0%
these ones so like do fasting or this
 

00:08:07.319 --> 00:08:10.309 align:start position:0%
these ones so like do fasting or this
kind<00:08:08.199><c> or</c><00:08:09.039><c> I</c><00:08:09.120><c> don't</c><00:08:09.240><c> know</c><00:08:09.479><c> just</c><00:08:09.720><c> standardize</c>

00:08:10.309 --> 00:08:10.319 align:start position:0%
kind or I don't know just standardize
 

00:08:10.319 --> 00:08:12.029 align:start position:0%
kind or I don't know just standardize
the<00:08:10.479><c> testing</c><00:08:10.800><c> for</c><00:08:11.039><c> all</c><00:08:11.199><c> the</c><00:08:11.400><c> special</c><00:08:11.720><c> tokens</c>

00:08:12.029 --> 00:08:12.039 align:start position:0%
the testing for all the special tokens
 

00:08:12.039 --> 00:08:14.430 align:start position:0%
the testing for all the special tokens
that<00:08:12.199><c> we</c><00:08:12.360><c> know</c><00:08:13.199><c> that</c><00:08:13.479><c> might</c><00:08:13.759><c> have</c><00:08:13.960><c> prevented</c>

00:08:14.430 --> 00:08:14.440 align:start position:0%
that we know that might have prevented
 

00:08:14.440 --> 00:08:17.070 align:start position:0%
that we know that might have prevented
for<00:08:14.639><c> instance</c><00:08:15.000><c> this</c><00:08:15.240><c> issue</c><00:08:16.039><c> in</c><00:08:16.240><c> development</c>

00:08:17.070 --> 00:08:17.080 align:start position:0%
for instance this issue in development
 

00:08:17.080 --> 00:08:18.629 align:start position:0%
for instance this issue in development
what<00:08:17.159><c> do</c><00:08:17.280><c> you</c><00:08:17.440><c> think</c><00:08:17.639><c> about</c>

00:08:18.629 --> 00:08:18.639 align:start position:0%
what do you think about
 

00:08:18.639 --> 00:08:21.189 align:start position:0%
what do you think about
this<00:08:19.639><c> I</c><00:08:19.720><c> think</c><00:08:20.159><c> that's</c><00:08:20.319><c> a</c><00:08:20.479><c> good</c><00:08:20.680><c> idea</c><00:08:21.000><c> but</c>

00:08:21.189 --> 00:08:21.199 align:start position:0%
this I think that's a good idea but
 

00:08:21.199 --> 00:08:23.110 align:start position:0%
this I think that's a good idea but
would<00:08:21.400><c> be</c><00:08:21.599><c> more</c><00:08:21.960><c> like</c><00:08:22.360><c> we</c><00:08:22.479><c> have</c><00:08:22.639><c> to</c><00:08:22.759><c> come</c><00:08:22.960><c> up</c>

00:08:23.110 --> 00:08:23.120 align:start position:0%
would be more like we have to come up
 

00:08:23.120 --> 00:08:26.230 align:start position:0%
would be more like we have to come up
with<00:08:23.319><c> preventative</c><00:08:24.120><c> measures</c><00:08:25.120><c> rather</c><00:08:25.440><c> than</c>

00:08:26.230 --> 00:08:26.240 align:start position:0%
with preventative measures rather than
 

00:08:26.240 --> 00:08:28.309 align:start position:0%
with preventative measures rather than
how<00:08:26.360><c> to</c><00:08:26.599><c> mitigate</c><00:08:27.280><c> these</c><00:08:27.479><c> sort</c><00:08:27.720><c> of</c><00:08:27.879><c> problems</c>

00:08:28.309 --> 00:08:28.319 align:start position:0%
how to mitigate these sort of problems
 

00:08:28.319 --> 00:08:30.070 align:start position:0%
how to mitigate these sort of problems
once<00:08:28.560><c> they're</c><00:08:28.800><c> introduced</c><00:08:29.560><c> way</c><00:08:29.680><c> of</c><00:08:29.800><c> doing</c>

00:08:30.070 --> 00:08:30.080 align:start position:0%
once they're introduced way of doing
 

00:08:30.080 --> 00:08:32.350 align:start position:0%
once they're introduced way of doing
that<00:08:30.280><c> is</c><00:08:30.440><c> just</c><00:08:30.759><c> like</c><00:08:31.280><c> have</c><00:08:31.520><c> good</c><00:08:31.720><c> standards</c><00:08:32.159><c> on</c>

00:08:32.350 --> 00:08:32.360 align:start position:0%
that is just like have good standards on
 

00:08:32.360 --> 00:08:34.070 align:start position:0%
that is just like have good standards on
things<00:08:32.560><c> that</c><00:08:32.760><c> we</c><00:08:32.919><c> have</c><00:08:33.039><c> to</c><00:08:33.200><c> do</c><00:08:33.399><c> and</c><00:08:33.599><c> things</c><00:08:33.959><c> we</c>

00:08:34.070 --> 00:08:34.080 align:start position:0%
things that we have to do and things we
 

00:08:34.080 --> 00:08:36.790 align:start position:0%
things that we have to do and things we
shouldn't<00:08:34.440><c> do</c><00:08:34.959><c> for</c><00:08:35.200><c> example</c><00:08:35.959><c> never</c><00:08:36.360><c> have</c><00:08:36.599><c> two</c>

00:08:36.790 --> 00:08:36.800 align:start position:0%
shouldn't do for example never have two
 

00:08:36.800 --> 00:08:38.509 align:start position:0%
shouldn't do for example never have two
or<00:08:36.919><c> more</c><00:08:37.120><c> Dres</c><00:08:37.680><c> pointing</c><00:08:37.959><c> to</c><00:08:38.159><c> the</c><00:08:38.320><c> same</c>

00:08:38.509 --> 00:08:38.519 align:start position:0%
or more Dres pointing to the same
 

00:08:38.519 --> 00:08:41.709 align:start position:0%
or more Dres pointing to the same
storage<00:08:39.000><c> layout</c><00:08:39.360><c> of</c><00:08:39.640><c> a</c><00:08:40.320><c> like</c><00:08:40.880><c> of</c><00:08:41.200><c> of</c><00:08:41.320><c> the</c><00:08:41.440><c> same</c>

00:08:41.709 --> 00:08:41.719 align:start position:0%
storage layout of a like of of the same
 

00:08:41.719 --> 00:08:43.870 align:start position:0%
storage layout of a like of of the same
contract<00:08:42.640><c> like</c><00:08:42.959><c> I</c><00:08:43.080><c> would</c><00:08:43.240><c> always</c><00:08:43.519><c> go</c><00:08:43.680><c> through</c>

00:08:43.870 --> 00:08:43.880 align:start position:0%
contract like I would always go through
 

00:08:43.880 --> 00:08:47.310 align:start position:0%
contract like I would always go through
the<00:08:44.320><c> preventative</c><00:08:45.320><c> um</c><00:08:46.200><c> measurements</c>

00:08:47.310 --> 00:08:47.320 align:start position:0%
the preventative um measurements
 

00:08:47.320 --> 00:08:50.389 align:start position:0%
the preventative um measurements
measures<00:08:48.320><c> rather</c><00:08:48.640><c> than</c><00:08:49.279><c> for</c><00:08:49.680><c> like</c><00:08:49.959><c> trying</c><00:08:50.240><c> to</c>

00:08:50.389 --> 00:08:50.399 align:start position:0%
measures rather than for like trying to
 

00:08:50.399 --> 00:08:53.750 align:start position:0%
measures rather than for like trying to
fix<00:08:50.720><c> things</c><00:08:51.080><c> when</c><00:08:51.440><c> they</c><00:08:51.760><c> already</c><00:08:52.160><c> wrong</c><00:08:53.160><c> okay</c>

00:08:53.750 --> 00:08:53.760 align:start position:0%
fix things when they already wrong okay
 

00:08:53.760 --> 00:08:55.070 align:start position:0%
fix things when they already wrong okay
thank<00:08:53.920><c> you</c><00:08:54.080><c> for</c><00:08:54.240><c> the</c><00:08:54.399><c> question</c><00:08:54.680><c> and</c><00:08:54.800><c> for</c><00:08:54.920><c> the</c>

00:08:55.070 --> 00:08:55.080 align:start position:0%
thank you for the question and for the
 

00:08:55.080 --> 00:08:57.070 align:start position:0%
thank you for the question and for the
answer<00:08:55.360><c> we</c><00:08:55.440><c> are</c><00:08:55.600><c> out</c><00:08:55.760><c> of</c><00:08:56.000><c> time</c><00:08:56.560><c> big</c><00:08:56.760><c> round</c><00:08:56.959><c> of</c>

00:08:57.070 --> 00:08:57.080 align:start position:0%
answer we are out of time big round of
 

00:08:57.080 --> 00:09:02.990 align:start position:0%
answer we are out of time big round of
applause<00:08:57.519><c> again</c><00:08:57.760><c> please</c><00:08:58.000><c> for</c><00:08:58.240><c> hot</c>

00:09:02.990 --> 00:09:03.000 align:start position:0%
 
 

00:09:03.000 --> 00:09:04.829 align:start position:0%
 
um<00:09:03.200><c> I'm</c><00:09:03.320><c> going</c><00:09:03.440><c> to</c><00:09:03.560><c> be</c><00:09:03.720><c> outside</c><00:09:04.360><c> in</c><00:09:04.560><c> case</c>

00:09:04.829 --> 00:09:04.839 align:start position:0%
um I'm going to be outside in case
 

00:09:04.839 --> 00:09:06.750 align:start position:0%
um I'm going to be outside in case
anyone<00:09:05.079><c> want</c><00:09:05.279><c> to</c><00:09:05.440><c> talk</c><00:09:05.640><c> about</c><00:09:06.040><c> this</c><00:09:06.240><c> topic</c>

00:09:06.750 --> 00:09:06.760 align:start position:0%
anyone want to talk about this topic
 

00:09:06.760 --> 00:09:11.279 align:start position:0%
anyone want to talk about this topic
thank<00:09:06.920><c> you</c><00:09:07.040><c> very</c><00:09:07.200><c> much</c><00:09:08.120><c> okay</c><00:09:08.320><c> thanks</c><00:09:08.640><c> again</c>

