►
From YouTube: TokenScript Weekly Meeting 20200213
Description
00:07:37 Tore: Is anyone currently talking because I can’t hear anything 😅
00:08:44 weiwu: https://github.com/AlphaWallet/TokenScript-Examples/blob/add-ens-files-from-main-repo/examples/ENS/ENS/ENS.xml
00:12:20 weiwu: RDN for ENS:
name=weiwu.ens
00:12:29 weiwu: RDN for Kitty:
tokenID=0x830e8029389023840234902384309
00:32:09 weiwu: name=weiwu.ens,dim2=value
00:35:50 weiwu: https://github.com/AlphaWallet/TokenScript-Examples/blob/add-ens-files-from-main-repo/examples/ENS/ENS/ENS.xml
00:43:42 hboon: web3.token.data.currentInstance
00:44:10 hboon: web3.token.data.all (or something like that)
00:45:39 weiwu: XUL
B
A
Fairness:
okay,
yeah,
yeah,
I,
hear
you.
No
sorry,
I
didn't
know
that
mutated.
Okay,
it's
alright,
so
agenda
very
important.
We
are
going
to
fix
the
2020,
a
temporary
schema,
and
this
is
the
last
time
I
collect
feedback
on
this
and
there's
some
changes
as
well.
All
most
of
the
stuff
was
previously
confirmed
in
previous
meetings.
We
are
still
open
to
suggestions
and
at
this
moment,
but
do
it
really
quickly
and
I
have
to
go
through
this
with
Boone
and
besides
getting
feedback?
A
This
is
an
I
think
it's
evident
with
what
it
means
here.
Note
that
when
you
define
that
object,
you
don't
define
how
it
has
been
used.
Instead,
it's
the
usage
that
is
relevant.
So
let's
say
this
data
object:
twenty
nine,
twenty
seven
to
20
30
35
later.
If
we
have
attestation,
it
will
simply
refer
to
this
data
object
and
then
with
the
additional
information
about
who
who
are
the
right
for
people
to
sign
it.
A
A
Then
these
distinct
values
means
that
the
user
have
distinct
tokens
identified
by
this
attribute
and
the
way
we
identify
token
is
going
to
be
similar
to
our
DN,
which
is
an
key
value
pair.
So
for
e
rc,
seven
to
one
the
key
value
pair
would
be
token.
Id
equals
two
token
ID
and
in
in
this
case,
and
because
they
don't
use
er,
say
seven
to
one.
The
way
to
identify
token
is
named
equal
to
the
name,
as
we
will
define
define
here,
and
there
are
as
many
such
tokens
as
there
are
many
names.
A
So
this
is
how
internally
we
store
tokens
in
in
agents
in
the
user
agents,
and
this
is
the
this
is
basically
a
recap
of
a
previous
discussion.
If
you
have
any
feedback,
yeah
that's
this
is
last
time
we
check
it
back
in
yeah
and
open
for
questions,
then
after
this
run
that
were
introduced.
The
second
change-
if
this
is
the
first
change
that
we
introduced,
that
object.
A
So
so,
ok,
let
me
first,
you
can
label
and
first
sorry,
this
future
is
actually
wrong.
Sorry,
this
filter
should
be
the
the
owner
equals
to
owner
I.
Don't
know
why
it's
wrong
yeah,
because
I
copy
the
code
from
James
and
garlic.
Sorry,
it's
not
the
based
on
the
version.
I
showed
you,
so
the
future
is
wrong.
The
correct
future
is
owner
equals
to
owner.
A
A
For
that
tribute
name,
no
okay
and
there's
a
piece
election
which
I
forgot
to
include
sorry
I
would
do
this
right
after
the
meeting
there's
a
dis
election,
which
means
for
the
four
tokens
that
was
transferred
away
from
you,
where
the
original
owners
you
and
the
new
owner
is
not.
These
are
not
selected.
A
A
You
think
this
would
work
like
Blackpool.
This
is
a
this
is
the
version
that
he
is
going
to
be
implemented.
I
think
we
have
that
way.
I
went
through
this
33
in
three
meetings.
This
is,
should
be
last
one,
so
yeah.
This
is
going
to
be
committed
as
an
implementable
thing
and
we're
going
to
robot
release
about
it.
So
the
background
of
this
is
we're
going
to
roll
out
three
releases
for
the
event
support
the
first
one
being
this
one
and
the
second
one
being
activities
and
the
third
one
being
notifications.
C
C
A
Yes,
yes,
I
did
I
share
this
picture
with
you
guys
before.
Let
me
do
this
on
the
channel
sure
I'll,
damn
it
I,
probably
didn't
shade
before
with
you,
I
shared
it
to
Sangha
as
an
galley
but
and
he's
not
here
today
and
and
and
I
forgot,
that
I
had
by
sharing
to
him
doesn't
mean
that
many
share
to
you
guys
so
do
I
show
you
stuff
with
okay,
maybe
presentation
mode.
A
C
C
C
A
C
C
A
A
C
A
C
C
A
C
A
A
Computer,
let's
say
crypto
kitty.
That
means
in
one
month,
I
will
have
2
gigabytes
of
data
and
probably
I
don't
have
a
single
one
of
them
really
relevant
to
me,
especially
if
a
theorem
has
this
problem
that
every
time
there's
one
hot
project
and
the
whole
transaction
is
about
that
hot
project.
Everybody
doesn't
is
it,
it
said
to
it,
participate
to
it.
The
the
filter
not
on
the
service
be
bad.
A
A
B
A
B
A
So
so
the
design
yeah,
so
the
so
in
terms
of
design
I
think
the
bottom
line.
Is
we
don't
filter
it
on
client
side,
it's
not
reliable
either
I
mean
there's
many
ways
to
make
sure
that
the
process
actually
running
on
Android,
but
you
don't
get
100%
sure
and
you
have
to
you
know,
recap
between
the
time
that
service
is
not
listening.
Yeah.
A
B
A
B
B
A
Will
simply
be
like
something
we
build
and
discard
it,
because
too
many
people
complain
pretty
simply
like
you
are
sending
like
overnight.
You
are
sending
300
megabytes
without
and
then
he
passed
out
really
like
drilling
down
and
find.
This
is
a
problem
and
they
were
fixing
the
film.
It
doesn't
make
sense
to
write
code
to
be
discarded,
we're
already
like
a
peon
in
experimentation
stage.
Yes,.
A
B
B
A
B
I
know
you
talk,
it's
like
an
outdated
data,
yeah
yeah
at
the
moment,
I
think
both
on
both
what
me
and
Boone
are
doing
is
just
like
I'm,
polling
or
and
well
intelligently,
polling
like
I'm.
What
I
do
is
if
it
if
a
new
transaction
appears
on
the
contract,
then
assume
that
all
all
data
is
dirty
and
refresh,
but
that's
going
to
get
strictly
impractical.
I'm,
on
my
say,
something
like
kitchens
yeah.
B
Yeah
for
sure
yeah,
so
the
it's
good
to
use
much
better
yeah.
A
A
Section
so
what
it
does
is,
and
it
describes
the
data
module
and
with
the
X
which
is
already
RFC,
then
this
data
module
is
later
used
in
140
as
event,
which
means
the
event
is
sourcing
data
from
that
one.
The
future
is
run.
The
correct
future
is
owner
equals
to
owner.
This
is
wrong,
our
updated,
so
what
it
does
is
it
gets
all
the
events
whose
own
there
is
owner,
and
then
you
get
a
lot
of
events
right.
Okay,.
A
A
B
A
Use
this
generic
structure,
then
we
should
be
able
to
capture
all
this,
be
aware
of
some
strange
guys
who
decided
to
build
our
D
and
with
multiple
key
here.
So
that's
something.
We
cannot
control,
because
somebody
can
divide
the
new
smart
contract
and
simply
say
every
token
is
identified
by
true
key
value.
Pairs.
A
That
could
be
a
that
would
be
identifier
a
token.
The
problem
is
that
we
cannot
and
we
cannot
restrict
this
design,
because
whoever
right
took
a
script,
Robert
write
us
up
into
a
smart
contract.
He
might
not
have
a
perfect
way
of
organizing
it
in
mind
and
the
tauren
ization
work
might
come
after
it,
so
you
have
to
somehow
yeah.
So
this
is
this
is
possible.
So
just
be
careful
when
you
store
the
token
identifier,
it's
actually
a
list
of
key
values
are.
A
Because
people
are
some
people,
sometimes
people
use
multi,
multi
kid
database
table
as
well.
You
know
just
to
be
careful
so
back
to
this
one,
so
this
line
history
lines
defines
how
many
tokens,
how
many
tokens
you
ever
have
so
be
careful
that
sometimes
a
new
event
created,
which
means
you
don't
mark
a
name
as
dirty.
Instead,
you
create
a
new
name,
because
that
event
could
mean
the
user
had
registered
a
new
name.
A
A
A
Nice
now
the
second
change
is
related
to
how
views
are
presented.
So
this
is
the
new
new
way
to
do
views
so
having
observed
James
and
golly
working
on
views,
it
turns
out
that
usually
this
view
is
not
into
camera,
but
there's
only
one
thing
which
is
JavaScript
in
it,
so
I
think
it's
probably
probably
better
to
do
this.
Do
it
in
this
way
every
view
has
a
component
style
and
component
script
and
there's
no
accelerator
at
all.
A
The
concept
is
and
because
the
concept
behind
it
is
because
token
views
were
supposed
to
be
updated
as
token
gets
updated,
its
Tamara
as
a
static
representation
wouldn't
work
anyway.
We
either
need
a
template
language,
but
we
need
something
similar
to
react.
The
JavaScript
framework
for
updating
objects
either
way
the
code
is
going
to
be
either
a
template
language
which
can
be
JavaScript
or
that
it's
a
JavaScript
in
react
native.
Therefore,
there
is
no
correct,
so
there's
there's
no
way
to
there's
no
need
for
schema
and
also
it
reduces
trouble
invalidation.
A
A
By
this
changer,
this
one,
that
is
every
every
view,
should
have
a
container
HTML
element
that
you
need.
You
uniquely
identifies
it
currently.
James
and
golly
would
always
wrap
everything
inside
a
view
with
a
div
element
HTML.
You
know
whose
ID
is
root,
and
this
has
to
change,
because
we
cannot
dictate
the
implementation.
It
can
be
happened
that
token
script
is
rendered
in
the
context
that
already
have
a
root
of
you.
A
Imagine,
for
example,
you
render
a
list
of
activities
in
that
tivities
tab
and
instead
of
and
let's
say,
the
user
have
about
a
hundred
activities
instead
of
producing
100
web
views,
you
produce
a
single
word
view
and
inside
of
which
there
are
the
activity
items
I
quantified
activities,
one
after
the
other
then
certainly
cannot
wrap
everyone.
If
the
div
ID
equals
the
root,
because
then
the
ID
is
not
only
unique
that
does
that
make
sense.
A
A
C
A
Let's
take
the
story
to
the
context
of
a
web
okay.
So
let's
say
this
is
a
web
page,
okay,
actually
even
without
going
to
the
web.
If
we,
even
if
we
just
go
talk
about
activities,
it
would
already
be
a
problem.
The
the
the
the
user,
the
developer
likes
and
golly
we'll
put
a
root,
a
div
around
every
activity,
which
means
you
practically
cannot
render
list
of
activities
in
one
webview.
I,
don't
understand!
Why,
like
you,
just
spoke
as
if
you're
not
getting
the
gating
the
problem,
but
I,
don't
follow
your
logic.
Okay,.
A
And
it's
not
avoidable,
because
we
cannot
guarantee
that
we
will
be
able
to
produce
token
script
running
in
in
webassembly
anytime
soon.
So
imagine
that
a
token
being
revered
when
rendered
in
the
web
web
interface,
for
example,
Carnac
story.
The
story
often
tell
about.
Let's
say
this
is
website
called
car
next
door
and
you
can
list
our
cars
for
rental
and
you
can
earn
$100
per
day.
The
webpage
would
have
a
section
where
it
is
it
the
cars
you
know,
logo
and
color
being
displayed,
which
is
a
token
of
you.
A
Imagine
that
being
a
being
the
TV
box
on
web
page.
Ideally,
it
should
be
rendered
separately,
not
inside
a
web
page,
but
we
cannot.
We
cannot
be
sure
so
when
you
put
it
there
and
it
have
a
div,
the
div
ID
equals
root.
There
is
really
good
chance
that
you're
conflicting
with
other
container
objects,
and
if
you
are
able
to
list
a
tool
of
your
cars
to
be
rented,
it's
guaranteed
conflict.
C
A
A
Okay,
so
we
can
do
both.
For
example,
we
can
always
create
a
top-level
container,
which
is
called
div
ID,
equals
to
token
ID
equal
to
something
you
know
really
long
stuff.
We
cannot
use
the
character
equal,
but
you
care
what
I
mean
here
in
the
meanwhile,
we
provide
the
JavaScript
API
and
the
DME
top-level
container
is
hidden.
A
C
A
C
A
C
A
Imagine
that
you
have
a
token
script
running
in
not
on
the
webpage.
This
would
affect.
If
the
token
script
runs
on
the
webpage.
Imagine
you
have
every
token
script
not
running
on
the
webpage.
Instead,
it
rents
in
the
meta
mask
a
little
bit
like
the
tablet
concept.
You
know
buddy's
a
magician
which
is
an
and
an
imagine
he's
been
there.
Then
we
cannot.
A
C
A
A
Okay
by
the
way,
I
know
that
we
don't
know
what
template
language
will
be
there,
that
choice
in
the
future,
but
I
think
that
in
general
the
concept
is,
you
have
some
language
so
having
removed
HTML
and
instead
play
put
script
script
they're,
always
at
new
kite
new
types
of
script,
so
this
change
can
be
made
even
if
we
are
not
100%
sure
about
the
future
template
language.
One
one
thought
about
that:
oh,
if.
C
A
C
A
C
C
A
At
least
this
way
we
will
know
that
we
would
not
cry
if
we
have
made
a
big
mistake,
because
there's
always
a
fallback
method
to
use
can
entity
references.
Well,
this
it
would
work,
but
I
really
want
to
use
object
reference
for
this,
not
entity
reference,
but
that's
something
later
because
object
reference
allows
you
to
store
the
object
outside
of
the
XML
file,
and
it
is
you
know
inside.
A
So
imagine
that
you
have
an
token
script
that
has
a
video.
Then
you
certainly
want
the
video
to
float
on
YouTube
or
somewhere
as
long
as
the
integrity
is
guaranteed,
which
is
the
you
video
downloads
at
certain
matches,
certain
hash.
How
may
be
ipfs,
you
know,
so
it's
better
to
use
object,
but
I
just
wanted
to
move
one
step
at
a
time.
B
Okay,
just
just
remember
that
references
are
don't
work
on
Android
just
so
that
I'm
like
if
you,
if
you
compile
the
script
to
the
end
and
it'll
work,
but
any
kind
of
object-
reference,
that's
not
compiled
out
we'll
just
that
script
will
fail
on
Android
yeah.
B
A
Okay,
so
that's
that's
a
change
and
I
James.
Are
you
ok
with
this
final
addition
with
the
script,
just
style,
script
and
content
altogether.
B
B
C
A
That's
about
right,
yeah!
It's
not
elegant,
though,
because
in
JavaScript
starting
will
see
a
doctor.
Yes,
fire
starting
will
see
that
and
that's
really
ugly,
you
you
it's
best
to
use
a
reference,
but
then
I
don't
want
to
start
another
to
struggle
with
the
reference
stuff.
It
better
be
done
in
a
separate
project
where
we
claim
support
of
IP
address.
You
know,
okay,
so
that's
all
the
changes,
there's
one
tiny
change,
which
is
an
inside
cards.
A
You
cannot
see
it
here,
but
inside
cards
previously
there's
a
token
card
now
we
change
it
to
token
without
that
card,
so
get
cards
inside
carthoris
token.
Previously
I
was
considered
concerned
that
if
you
have
a
token
element
inside
cards-
and
it
would,
it
would
be
called
the
same
name
as
the
line
9
where
the
roots
element
is,
and
maybe
people
would
be
confused
because
the
elements
have
the
same
name,
but
it
seems
nobody
was.
It
was
confused
and
with
this
kind
of
thing
and
so
I
just
you
know,
change
it
back
cards
here.
A
B
A
It's
an
okay,
so
you
need
to
support
a
new
schema.
You
need
to
be
able
to
build
index
database
of
events
and
you
need
to
be
able
to
gauge
the
value
of
attributes
and
somebody
has
to
make
the
server
so
the
activities
tab,
there's
there's
not
in
the
school.
No,
that's
the
second
phase.
Look
at
this!
This
picture
has
a
first
phase.
You
know:
can
you
see
my
selection
box?
Yes,
this
is
the
first
phase.
A
C
C
A
Yes
previously,
there
was
a
item.
Sangani
was
has
argument.
Well
why?
We
should
not
do
so,
because
open
sea
has
the
potential
for
getting
us
to
know
how
many
sub
tokens
we
have
but
and
I.
My
argument
against.
That
is,
if
you
know
how
many
sub
tokens
you
have,
but
you
cannot
see
them
in
clear
text,
then
it's
as
useful
as
if
they
don't
have
them
so
I
mean
having
often
see
displaying
the
list
of
subtotals.
That
does
doesn't
mysteriously
identify
the
bad
hash
and
doesn't
give
you
very
much.
A
We
can
probably
just
display
the
number
of
sub
sub
sub
tokens
instead.
So
if
we
can
display
the
number
of
sub
tokens,
we
can
drop
the
open
sea
okay.
So
you
know
what
I
mean
here:
there's
a
problem
in
the
S
contract
that
the
open
sea
cannot
obtain
the
sub
domain
list
and
there's
no
way
to
obtain
that
list.
C
A
B
B
A
Don't
I
don't
like
to
have
the
code
base
and
having
two
sets
of
logic,
that's
growing
in
a
code
base
which
makes
it
very
difficult
to
maintain
and
I
I
prefer
to
do
this.
If,
if
a,
if
there
is
no
indexed
event
source
for
a
theorem
block
chain
or
a
theorem
like
block
chain,
then
we
simply
display,
then
we
simply
never
update
the
the
actually
builds
unless
the
user.
Explicitly,
though
so,
okay.
A
B
A
That
I
was
thinking
about
better
car
to
I,
have
with
him
to
produce
our
own
indexed
event
database
for
battle
card
Chinese.
How
do
we
know
it's
need
an?
Actually.
You
can
argue
it's
not
needed,
but
if
really
scalable
solution
you
don't
want
to.
You
know.
You
know
there
are
loads
of
event.
Coming
from
the
single
contract
running
on
the
battery
card.
A
Is
your
blockchain
there's
only
one
contract
running
there
and
we
subscribing
to
all
the
events
and
soft
a
future
means
it
basically
subscribe
to
everything
happens
on
the
and
the
on
the
Easter
and
that
production,
it's
just
not
scalable.
So
it's
better
way
to
do.
That
is
to
find
a
way
to
make
index
key
theorem
database
server
source
code
that
is
available
for
for
download
in
our
own,
with
our
own
honor
that
we
can
convince
a
member
that
had
to
connect
to
a
better
card
or.