►
Description
Is TypeScript giving you a headache?
Join Blackgirlbytes and David Blass TODAY at 1 pm ET to learn about ArkType - the type validation library that automatically ensures your web application's data is correct and consistent. Live on http://twitch.tv/github
RSVP: http://gh.io/arktype
A
A
A
Thank
you,
hello,
hello.
Everyone
I
hope
you
enjoyed
the
opening
music
I
always
enjoy
jamming
out
to
it.
Thank
you
for
tuning
in
I
already
see
people
here,
someone
said
hi
from
Pagoda
I
feel
like
you
pronounced
that
wrong,
but
from
Colombia
someone
said
types
am
I
right.
Someone
said
hello,
everyone
really
excited.
A
So,
if
you're
new
to
this
twitch
stream,
this
is
a
weekly
twitch
stream
that
I
do
brought
to
you
by
GitHub
called
open
source
Friday,
where
I
talk
to
open
source
maintainers
about
their
various
projects,
and
we
learn
how
we
can
contribute
and
get
involved
as
well
or
if
we're
looking
to
eventually
become
maintained.
There's
ourselves.
This
is
great
inspiration.
Today
we
have
our
guest,
David,
I,
I.
Hope
I,
didn't
ask
how
you
say
your
last
name:
I'm
gonna,
assume
it's
blast,
but
you
can.
B
A
But
I
think
it's
cool
it's
a
cool
day
but
feel
free
to
introduce
yourself.
Tell
us
like
what
you
do.
What
you're
about
what
what
makes
you
excited.
B
Yeah,
so
my
name's
David
I
think
typescript
has
been
something
that
I've
I've
been
a
big
Enthusiast
for
a
very
long
time.
Like
a
lot
of
the
community,
it's
been
really
nice
to
see.
B
You
know
over
the
last
well
I
guess
it's
been
about
10
years
now
that
typescript's
been
around
but
to
sort
of
see
that
kind
of
migration
towards
it
becoming
a
niche
thing
towards
becoming
sort
of
the
standard
for
the
way
that
a
lot
of
a
lot
of
web
apps
and
libraries
are
built
now,
so
that's
been
really
exciting.
B
I
think
it's
great
for
a
developer
experience
and
as
I
sort
of
delved
into
typescript
and
what
it's
capable
of
I
really
found
this
like
whole
world
of
things
that
you
know
previously
I.
We
didn't
really
think
were
possible
that
can
be
done
just
using
typescript's
type
system,
it's
really
powerful
and
if
you
work
with
it
the
right
way,
it
can
be
really
fast
too.
B
A
Excited
first
off
I
didn't
even
realize
it's
been
10
years
since
typescript
came
out
like
in
my
head,
I'm,
like
oh
JavaScript,
came
out
20
years
ago,
but
no
it's
almost
like
almost
30
I
guess
yeah.
A
So
you
talked
about
like
this
passion
for
typescript
and
you
kind
of
mentioned
the
name
archetype.
What
is
that.
B
Yeah
so
it
actually
arose
when
I
was
building.
Another
project
that
had
to
do
with
automated
UI
testing
is
another
open
source
project
is
called
redo,
but
you
know,
as
as
I
think
I've
tended
to
do.
You
know
you're
building
one
tool
then
you're
like
I
should
make
an
abstraction
to
make
this
tool
easier
to
build,
and
then
you
get
like
10
levels
of
distract
abstractions
up
and
you're.
B
Like
you
know,
what
I
really
want
is
to
just
like
build
this
entire
new
validation
system,
and
you
know
I
need
to
like
be
able
to
write
things
that
look
just
like
typescript
types
that
work
at
runtime,
so
that
was
kind
of
the
initial
inspiration
for
it
was
you
know
if
you
look
at
like
most
existing
validation,
libraries,
you
have
to
learn.
You
know
like
a
changing
syntax
or
some
kind
of
like
unique
set
of
apis
to
be
able
to
represent
even
like
basic
types
that
we
all
are
sort
of
familiar
with.
B
You
know
you
have
name
as
a
string,
and
you
know
age
is
an
optional
number
or
whatever
you
have
one
model
for
doing
that
in
typescript
and
a
separate
model
for
doing
it
in
validators,
but
I
was
trying
to
sort
of
like
think
from
first
principles
about
if
I
were
just
going
to
design.
You
know
a
validator
from
the
ground
up
to
just
behave
as
close
to
typescript
as
possible.
Like
what
would
it
actually
look
like
you
know?
B
How
could
I
actually
represent
these
types
in
a
way
that
we
can
still
use
them
to
do
validation
at
runtime?
But
then
they
maintain.
That
kind
of
you
know
consistency
with
typescript.
You
can
use
them
in
your
IDE
to
give
you
auto-complete
and
type
errors
and
all
those
benefits
as
well,
so
that
was
kind
of
the
initial
motivation
for
it
and
I
have
been
working
on
it
for
about
a
year
and
a
half.
B
So
it's
definitely
been
something
that
I'm,
like
yeah,
really
really
poured
a
lot
of
iteration
Cycles
into,
and
at
this
point,
I'm
really
really
excited
I.
Think
it's
a
really.
You
know
pretty
polished,
pretty
polished,
validation,
library
that
I'm
excited
to
share
with
people,
and
you
know
I'm
at
that
phase.
Now
we're
really
starting
to
get
a
lot
of
external
feedback,
and
you
know
we're
definitely
interested
in
in
more
of
that,
so
sharing
it
with
Community.
Exactly
what
I'm
here
to
do
and
exactly
what
I
want
to
be
doing.
A
A
Also
highlight
some
some
comments,
I
like
to
make
sure
people
feel
involved,
so
some
people
are
tuning
in
from
Morocco
and
Peru
and
Mumbai.
Also
we
got
someone
that
said:
typescript
is
something
I'm
really
excited
about,
especially
after
your
other
streams
and
then
okay
I.
Don't
fully
understand
this
joke.
So
maybe
you
can
explain
it
to
me,
but
they
said
Zod
am
I
a
joke
to
you.
I
have
not
used.
B
Yeah,
so
Zod
is
like
the
biggest
validation
Library
out
there
right
now,
or
at
least
sort
of
the
like
best
practice.
You
see
it
in
most
places
if
you're
looking
at
like
typescript,
tooling
and
the
best
kind
of
like
inference
for
a
typescript
validator.
B
So
it
kind
of
is
based
on
that.
Like
chaining
syntax
strategy,
that
I
was
describing
where
you'd
say
like
saw
dot,
string,
dot,
optional,
Etc,
so
I
think
it's
very
powerful
and
the
inference
Works
quite
well.
But
it
is
a
very
different
approach.
I
think
one
of
the
really
cool
things
about
archetype
is
so
there's
like
this
whole
generation
of
validators
like
Joi
and
yup
and
Zod,
and
they
they
especially
these
odd,
is
definitely
the
best
of
those.
B
In
my
opinion,
they
work
very
well
and
I
think
that
they're
they're,
very
reliable
and
familiar
to
people-
and
you
know
I-
get
asked
a
lot
about
like
compare
comparisons
and
how
they
differ,
and
things
like
that.
But
one
of
the
cool
things
is
like
it
is
a
validation
Library,
but
but
it
is
actually
not
have
very
much
foundationally
in
common
with
sod,
the
biggest
difference
being
like.
It's
a
parsed
syntax,
so
it
actually
looks
like
typescript.
It
comes
from
streams
and
objects
and
kind
of
like
simple
structures.
B
It's
not
like
based
on
function,
chaining,
which
has
some
really
cool
benefits
like
making
it
portable
and
serializable.
And
you
know
the
kind
of
like
long-term
vision
for
all
this
stuff
is
something
like
archetype
could
actually
be
like
a
cross-language
validation,
definition
syntax,
because
it's
not
based
on
JavaScript
functions,
because
it's
just
like
a
simple.
You
know:
parse
syntax
that
could
be
easily
stored
in
Json.
You
could
actually
have
the
same
definition
be
used
from
you
know
your
typescript
server
and
your
JavaScript
front
end
and
your
python
server
and
your
you
know.
B
What
all
the
cool
kids
are
doing
now,
so
you
can
use
it
anywhere.
So
so
that's
like
one
of
those
those
really
cool
aspects
of
it
where
you
know
it's
kind
of
like
less
bound
to
a
particular
ecosystem.
But
that
said,
it
is
like
very
rooted
in
typescript
right
so
like
all
of
the
type
syntax
and
everything
is
meant
to
be
familiar
to
typescript
developers.
So
it'll
be
really
interesting.
Interesting
to
kind
of
yeah,
again
hear
some
more
of
their
thoughts
about
what
they
think
gotcha.
A
Thank
you
for
that
Clarity.
Even
thank
you
for
the
for
the
joke.
I
know
they
said
just
kidding,
I
I
love
to
see
more
libraries
in
the
space
because
I
have
had
people
come
on
here
and
I
seen
like
they
wrote
code
that
had
thought
or
they.
Someone
mentions
that
in
the
comments
and
I've
been
like,
not
sure
what
that
is,
but
so
glad
that
you,
you
explained
that
to
me
and
I'm
sure
it
helped
other
people
who
are
in
the
comments
as
well.
A
Okay,
so
talking
about
not
knowing
things
or
not
understanding
things.
My
question
to
you
is
for
folks
that
don't
know,
can
you
explain
and
you
you
got
into
it
a
little
bit,
but
can
you
explain
what
makes
it
so
challenging
to
reuse
typescript
definitions
at
runtime.
B
Yeah,
so
so
definitely
I
think
that
the
reason
that
there's
so
many
solutions
in
this
problem
space
is
because
it's
genuinely
a
really
difficult
problem
to
solve,
and
it's
a
it's
a
problem,
that's
pervasive
because
almost
every
developer,
working
in
the
JavaScript
typescript
ecosystem,
or
at
least
I
guess
technically,
if
you're
not
doing
any
validation,
then
you're
fine.
But
if
you're
working
with
types
and
you
want
to
validate
things
and
have
type
safe
definitions,
then
this
is
a
big
problem.
B
So
I
think
there's
some
like
GitHub
issue
somewhere,
where
it's
like
typescript
should
have
runtime
validation
and
here's
like
50
libraries
that
have
been
built
to
try
to
fix
this
problem.
Like
you
know,
maybe
typescript
should
just
do
it
or
something
like
that.
I
think
typescript
has
been
pretty
adamant
that
their
sort
of
goal
is
to
build
this
compiled
language
that
creates
JavaScript.
So
it
seems
unlikely
that
that
will
ever
happen,
but
basically
it's
a
really
common
problem.
You
know
I
have
a
type,
that's
user,
with
a
name
and
an
age.
B
That's
what
I
use
to
tell
me.
You
know
what
my
input
of
my
function
is:
how
do
I
reuse
the
same
type
to
make
sure
that,
when
someone
submits
a
form
you
know
representing
representing
you
know
when
they
create
a
user,
for
example,
they
sign
up
for
an
account
how
do
I
like
reuse
those
same
definitions
without
duplicating
the
logic,
because
the
last
thing
that
you
want
to
do
is
have
duplicated
code
when
it
comes
to
your
data
validation.
That's
almost
like.
B
Probably
the
most
sensitive
part
of
your
app
is,
you
know,
is
the
are
the
you
know.
Is
the
data
coming
in
and
out
of
my
app
of
the
proper
shape
that
I
expect
if
it's
not
you're,
probably
gonna
crash.
So
you
don't
want
that
to
happen,
and
you
don't
want
to
have
to
maintain
the
definitions
in
two
plays
places.
B
The
problem
is
that
the
typescript
is
a
compiled
syntax
and
it
you
know,
creates
JavaScript,
which
is
actually
what
runs
in
the
browser
and
there's
no
way
to
like
go
back
and
access
the
types
at
that
point,
they're
kind
of
just
gone.
So
it's
a
big
challenge.
Basically,
you
have
to
come
up
with
some
way
to
write
something
in
you
know
in
syntax,
that's
native
to
JavaScript
and
available
to
JavaScript,
but
that
infer
is
a
type
that
you
can
still
use
within
typescript
and
your
IDE
as
the
function
parameter.
B
You
know
as
the
type
of
your
data
that
comes
out
of
a
validator,
so
that's
the
main
Challenge
and
yeah.
It's
been
something
that
we've
definitely
struggled
with
for
a
long
time.
There's
other
sort
of
approaches,
like
you
know
these
kind
of,
like
extra
compilation,
steps
where
maybe
they'll
try
to
convert
your
typescript
types
to
be
something
that's
available
at
runtime
archetype
doesn't
do
that
by
default.
It's
sort
of
meant
to
be.
B
You
can
just
get
up
and
running
with
it
right
away
and
it
will
it
doesn't
require
any
plugins
or
any
any
kind
of
like
extra
compiler
steps.
So
it
just
kind
of
takes
advantage
of
this
very
unique
property
where
it
has
a
full
typescript,
syntax,
parser
written
identically
between
typescript
generic
types
and
like
runtime
code
at
JavaScript.
So
we'll
we'll
get
into
that
a
little
bit
when
we
like
look
at
some
of
the
demos,
probably
but
you'll
sort
of
see
that
at
runtime
and
then
statically
within
your
IDE.
A
B
A
B
Yeah,
it's
actually
like
a
twitch
viewer
of
mine,
yeah
I
actually
do
stream
occasionally
from
twitch.
That's
archetype
IO
and
it's
been
a
little
while,
but
maybe
you
guys
can
motivate
me
to
get
back
into
get
back
into
streaming,
because
I
actually
I
do
miss
it
quite
a
lot.
So
I
should
I
should
start
start
streaming.
Some
of
my
typescript
typescript
code
more
regularly.
If
you
guys
want
to
see
some
crazy
types,
I.
A
B
Great
okay,
so
yeah,
you
can
kind
of
see
here
well,
this
is
our
this
is
our
GitHub
repo.
B
It's
just
archetype
IO
archetype
here,
and
it's
kind
of
got
this
built-in
little
demo
and
everything
and
there's
some
kind
of
you
know
basic,
getting
started
steps
here.
This
is
just
a
landing
page
that
we
go
to.
That
has
a
little
bit
a
richer
of
a
docs
experience
and
I've
been
questioning
whether
or
not
this
is
actually
like
I'm,
not
a
ux
person
and
like
I'm,
terrible
at
it.
B
I
have
very
bad
intuitions
I
tried
to
like
build
a
website,
but
you
know
who
knows
it's
supposed
to
be
the
idea
that,
like
okay,
so
you've
got
this
like
automatic
demo
thing
going
on
here,
but
you
can
like
take
control
of
it
by
pressing
this
button,
but
I.
B
Think
it's
pretty
unintuitive,
but
I'll
work
on
it
or
just
maybe
I-
can
find
someone
else
who's
better
at
ux
than
me,
but
basically
this
just
brings
up
like
a
cute
little
like
UI.
This
is
using
stack
Blitz
and
it
just
kind
of
replicates
an
environment
where
you
can.
You
know
see
how
archetype
works
again.
B
This
is
like
not
any
special
plugins
or
something
so
it's
identical
to
what
would
happen
in
vs
code
or
whatever,
if
you
just
install
archive
and
start
using
it,
but
but
basically
the
the
neat
part
and
the
like
little
addition
to
it.
That
makes
it
that
makes
it
a
little
bit
clearer.
Is
this
kind
of
definition
and
output?
So
you
can
see
here.
B
This
definition
is
based
on
like
what
we've
written
here
and
then
we
see
what
the
output
was,
which
is
based
on
trying
to
actually
validate
whatever
data
we
passed
in
and
then
there's
an
error
here
that
we'll
get
into
it
a
little
bit,
but
you
can
kind
of
see
a
little
bit
about
what
this
type
type
syntax
looks
like
we'll
start,
actually
even
a
little
bit
more
basic
than
this.
A
Something
called
my
could
I
pause
you
we
have
someone
that
asks
if
you
can
zoom
in
a
little
bit
I
know.
Sometimes
people
watch
on
their
phone.
Sorry
that
to
interrupt.
B
You
hopefully,
hopefully.
B
I
think
that's
about
as
big
as
I
can
get
it
without
everything
up
yeah,
that's
great,
okay!
B
So
anyway,
basically
you
can
see
that
if
I
start
typing
here
so,
for
example,
I'm
like
typing,
okay
I
want
to
create
a
type.
It
starts
with
s.
Maybe,
and
so
it's
a
nice
autocomplete
feature
where
you
can
see
all
the
keywords
that
start
with
s.
B
So
maybe
I
want
a
string,
and
so
the
really
nice
thing
is,
you
can
even
see
in
this
like
function,
signature
helper
again,
it's
not
based
on
anything
unique,
it's
just
using
typescript
type
system,
but
you
can
see
that
basically,
your
input
definition
is
string
as
a
string
and
then
your
output
is
the
actual
type
string,
so
it'll
validate
whether
something's
a
string
for
you
or
not,
and
then
you
know
from
there
you
can
get
into
like
any
kind
of
sort
of
arbitrarily
complex
typescript
expression.
B
So
maybe
I
want
like
a
string
or
a
number,
and
so
now
it's
a
Stringer
number
and
you
can
see
the
type
was
inferred,
a
string
or
number.
Maybe
I
want
a
string
or
a
number
array
that
works
or
maybe
I
want
an
array
of
strings
or
numbers,
and
so
you
can
have
like
arbitrary
parentheses.
Anything
works,
and
you
can
see
that
all
the
typescript
is
basically
inferred
one
to
one.
So
I
could
like
Mouse
over
this.
B
B
It's
like
people
who
have
used
validation,
libraries
before
not
not
this
part
of
it,
but
but
the
part
of
it
where
basically,
what
it
does
is
that
it
will
then
take
this
type
that
you've
defined
based
on
typescript
syntax,
and
it
will
give
you
back
a
result
either,
including
valid
data
based
on
a
type
or
some
error
message.
Describing
you
know
what
kinds
of
problems
there
were
that
prevented
the
data
from
being
valid,
so
yeah,
it's
really
fun
to
see.
B
Definitely
just
like
messing
around
even
a
little
bit
like
this
and
just
kind
of
seeing
like
as
you
type
you
know
you
get
these
really
nice
error
messages.
You
know
if
there's
ever
like
a
syntax
mistake
like
Oh
missing,
expected
I
didn't
finish
my
like
token
or
whatever
you
could
say
you
know,
there's
all
sorts
of
runtime
specific
Expressions,
maybe
I
said
like
Boolean
is
less
than
five
by
accident.
I
probably
meant
number,
but
you
know
so
that
works
okay.
B
But
if
I
made
a
mistake
in
types
like
this
it
actually
it
has
this
whole,
like
semantic
validation
as
well,
which
stack
Blitz,
maybe
isn't
doing
the
the
optimal
job
of
actually
yeah
re-rendering
the
type
air
there,
but
you
can
see
like
it
actually
knows
that
a
Boolean
isn't
something
you
can
compare
to
a
number.
B
So
it's
got
this
whole
like
built-in,
syntax,
Checker
and
all
the
semantic
checks,
so
I
think
a
lot
of
developers
see
strings
and
they
sort
of
this
impulse
of
like
oh
strings
are
not
type
safe
like
this
is
a
magic
string.
Yeah
I
would
venture
to
say
that,
like
the
input
you
get
when
you're
typing
in,
like
a
an
archetype,
definition,
is
oftentimes
like
richer
than
the
input
you
get
when
you're
typing
in
typescript,
like
natively
in
your
IDE
there's
a
lot
of
cases,
we
check
for
the
typescript
itself
doesn't
even
necessarily
catch.
B
So
it's
like
very
deep,
the
sort
of
like
level
of
validation
that
occurs
when
you're
creating
types.
So
with
with
some
of
that
like
out
of
the
way
it
might
make
a
little
bit
more
sense.
What
we're
looking
at
here
so
we're
defining.
Unfortunately,
I
wanted
to
Define
package
because,
like
you
know,
open
source
packages,
it
makes
sense.
B
A
B
Don't
know
anyways,
it
still
gets
mad
at
you.
If
you
try
to
use
it
so
I
just
shortened
it
a
little
bit
for
that
reason,
but
basically
this
is
a
type,
and
so
this
is
this
obviously
I
added
a
couple
of
extras
in
here,
but
essentially
in
addition
to
like
the
base
typescript
types,
where,
like
all
the
keywords
like
string
and
number
and
object
and
unknown
or
things
like
that,
those
all
work,
but
we
added
this
like
runtime
specific
syntax.
B
B
So
there's
a
lot
of
like
built-ins
like
that
are
really
useful
in
this
case,
semper
is
another
built-in
that
verifies
the
proper
version
number
and
then
there's
kind
of
this
like
Rich
Syntax
for
defining.
You
know
bound.
So
this
would
typically
be
either
like
a
number
you
can
Define
if
either
Like,
A,
Min
or
a
Max
or
both
or
for
a
string.
It's
like
the
number
of
characters
in
The
String.
So
maybe
it's
a
string
lesson
I,
don't
know
how
much
tweets
are
now.
Is
it
still
160
or
something
I,
don't
know.
B
Yeah
less
than
280
or
whatever
number
it
is
and
then
and
then
you
could
also
do
it.
The
raise
so
like
in
this
case
what
this.
What
this
means
is
that
we
have
a
type
package
where
the
name
is
a
string.
The
version
is
a
proper
semper
string.
So
it's
like
you
know
what
1.0.1
or
whatever
and
then
contributors
is
optional
and
it's
a
I
mean
I
think
this
was
just
sort
of
for
the
purpose
of
demonstration.
B
So
then,
if
I
look
at
how
it's
inferred
to
typescript
these
like
run
time
specific
constraints
like
semver
or
email
or
bounds,
that
say
like
how
to
be
greater
than
one
and
less
than
10
go
away,
and
you
just
see
the
part
that
you
care
about
in
your
IDE,
which
is
that
name,
is
a
string
version,
is
a
string
and
contributors
is
an
optional
array
of
strings.
B
So
there's
that,
like
really
nice
one-to-one
when
you're
defining
definitions
that
correlate
directly
with
typescript
and
then
and
then
when
you're,
defining
things
that
are
outside
the
scope
of
typescript
it'll,
just
happily
infer
whatever
the
most
specific
typescript
type
is
that
would
correlate
with
that.
You
know
that
idea
so
again
for
sember,
it's
string,
I'm
sure
you
could
try
to
build
some
crazy
template.
Literal
thing
that
like
did
something
like
semper
but
I,
don't
think
that
would
be
very
helpful.
B
So,
for
the
most
part,
types
like
that
are
going
to
just
be
a
string
and
then,
like
I,
said
for
the
array:
you'll
just
get
the
base
version
of
it,
but
then,
when
you
actually
run
it
at
runtime,
you'll
see
that
it
will
do
those
checks.
So
now
this
whole
thing
kind
of
makes
a
little
bit
more
sense
where
you
can
see
the
definition
that
was
defined
here,
and
you
see
that
the
output
says
problems.
Contributors
must
be
more
than
one
items
long
and
it
was
one
well
that's
from
this
data,
so.
A
B
Passed
in
the
data
name,
archetype
version,
1.0.0-alpha
and
contributors
was
just
me,
so
we
do
have
some
other
contributors
and
you
know
we
definitely
encourage
you
to
add
your
name
to
that
list.
Yeah.
A
B
So
if
I
add
this
in,
you
can
see
now
that
the
data
is
correctly
output
here
and
that
this
is
valid,
and
you
know
if
I
did
something
like
this.
You
get
a
different
error
message
in
this
case.
The
first
item
of
contributors
must
be
a
valid
email
and
it
was
Sean
at
archetype,
but
that's
actually
not
not
a
valid
email.
This
doesn't
have
a
domain
suffix.
So
you
get
these
like
really
nice
detailed
error
messages
for
everything
that
could
go
wrong,
which.
B
Yeah,
okay,
yeah,
that's
right!
Wow!
So
if
you
have
like
multiple
errors,
you'd
get
multiple
or
I
guess
in
this
case,
it's
just
telling
me
what
the
first
one
was.
A
B
But
but
basically
like,
if
you
have
multiple
errors
at
different,
have
then
you
know
I,
don't
know,
say
if
I
like
yeah
so
say
if
I
like
change
this,
to
be
five
instead
of
a
name
for
some
reason
you
get
like
this
really
nice
summary
of
all
of
the
errors,
so
name
must
be
a
string
and
contributor.
Zero
must
be
a
valid
email,
so
yeah
I
think
it's.
It
ends
up
being
a
really
good
experience
to
work
with
that's.
A
B
Yeah
yeah,
so
it's
built
in
so
we
have
there's
like
all
the
default
typescript
types
and
then
there's
this
like
set
of
runtime
specific
keywords
that
we
added.
So
it's
common
things
like
email
this.
This
really
should
be
muted
but
common.
You
know
runtime
types
like
email
credit
card.
You
know
uuid
semper,
all
those
kinds
of
things
we
just
build
in
by
default
and
then
it's
also
very
easy
to
define
those
types
using
custom,
validators
narrow
down,
string
yeah.
B
So
you
can
Define
string
literals
and
everything
like
pretty
much
any
kind
of
like
typescript
syntax
is
is
sort
of
a
one-to-one.
So
if
I
wanted
to
say
that
the
name
had
to
be
like
specifically
archetype
I
could
Define
it
as
a
string
literal
like
this
and
then
if
I
were
to
change
it
here,
you
can
see,
name
must
be
archetype
and
was
Arc
took
or
whatever
that
is,
and.
B
You
actually
look
at
the
type
of
the
package,
then
it
gets
narrowed
down
to
be
archetyped
specifically.
So
again,
it's
like
really
very
carefully
tested
to
do.
It's
like
one-to-one
with
typescript,
where
you'll
always
get
back
exactly
what
you
put
in,
and
you
get
these
like,
really
detailed
type
errors.
If
you
ever
make
a
typo
or
anything
like
that,
I
think
you
could
again
do
some
kind
of
like
template.
Literal
thing:
if
you're
talking
about
for
December
and
say,
like
you
know,
whatever
string
dot,
something,
this
is
really
complex.
B
Rules
and
I
actually
don't
even
know
how
that
would
be
exactly
represented
so
I'll.
Just
let
you
add
that
you
could
always
cast
things
if
you
want
to
we'll
see
if
it
adds
some
like
autocomplete
here
for
this,
if
I
say
like
okay,
great
but
I,
actually
you
know
I
want
to
infer
to
like
strip
string
right,
maybe
we'll
even
say
like
you
know,
if
we
think
that
sember
should
be
like
number
oops
dot
number
or
something.
Oh.
B
Another
number,
so
you
can
actually
cast
things
like
this,
basically
telling
it
like
use
this
at
validation.
But
then,
when
you
actually
infer
the
type
I
want
it
to
look
like
this
and
then,
if
you
actually
check
the
type
it'll
it'll
do
that
for
you.
So
if
that's
what
you're
into
then
feel
free
to
like
add
on
whatever
types
you
want,
but
the
default
inference
should,
for
the
most
part,
be
pretty
good.
This.
A
B
Yeah,
no
definitely,
and
if
anyone
has
a
suggestion
or
question
about
like
a
type
you'd
like
me
to
represent
here,
there's
quite
a
lot
that
I
that
I
haven't
done
yet
that
you
might,
you
know,
have
familiar
patterns
from
other
validators
that
you
want
to
see
what
it
looks
like
in
this
kind
of
syntax
I'd
be
happy
to
try
any
of
that
stuff.
A
A
Okay,
this
is
this
is
more
a
question
for
me
that
I
can
quickly
answer.
Someone
was
trying
to
reach
the
page
for
archetype
I,
just
lost
it,
because
I
scrolled
too
fast
and
just
a
reminder
to
folks
I
think
they
were
spelling
it
wrong.
It
I
have
the
the
link
down
below,
as
you
can
see
it,
it's
Arc
Type,
like
Ark
type
dot
Io.
If
you
want
to
go
ahead
and
check
it
out,
and
then
someone
else
asks
what
editor
you're
using
I
believe
you're
using
stack
Blitz
and
that's
on
the
archetype
website.
A
So
if
y'all
wanted
to
follow
along
with
David
as
he
as
he's
doing
this
demo,
you
can
literally
do
the
same
thing
and
and
edit
the
the
stack.
Let's
editor,
that's
embedded
onto
his
site.
Somebody
else
said:
how
does
this
work
I'm
guessing?
This
is
some
type
of
massive
temperate
template
literal
type,
mine.
B
Yeah,
actually
it's
it
works
using
a
shift,
reduce
parser.
So
it's
it's
like
a
real
parser
implementation,
which
maybe
I
can
you
guys
can
still
see
this
here.
Let
me
just
make
sure
that
this
is
minimized,
so
that
it's
not
hopefully
my
background-
doesn't
bother
anyone
I
like
to
like
have
animals
in
the
background,
so
yeah
anyways.
B
Basically,
you
can
get
like
a
general
idea
from
oh
from
if
we
look
at,
for
example,
string
parsing
and
we
look
at
operators
yeah.
So
this
is
like
one
of
one
of
the
nice
examples
I
like
to
show
people
when
they're
like
interested
in
how
it
actually
works.
B
So
you
see,
what's
here,
is
a
function
that
at
runtime
has
like
a
state
that
represents
the
state
of
a
you,
know,
a
string,
that's
being
parsed,
so
it
might
have
certain
branches
and
certain
groups,
and
things
like
that
that
it's
encountered
and
it
has
characters
left
to
scan-
and
this
is
the
same
function
essentially
written
as
a
generic
type,
and
it
has
this
state-
that's
represented
within
typescript
type
system.
B
So
basically,
you
can
see
this
like
really
clear.
Parallel
between
what's
happening
at
run
time
and
then
what's
happening
within
typescript's
type
system,
so
you
can
actually
use
template
literals,
and
you
could
do
this
like
pattern
matching.
But
I
went
through
a
lot
of
iteration
Cycles
on
trying
to
get
this
to
work
in
a
performant
way,
and
it
turns
out
that,
like
typescripts
handling
of
template,
literal
pattern
matching
is
actually
not
very
performant.
B
So
if
anyone's
trying
to
write
a
parser
for
types,
I
would
not
recommend
just
like
checking,
you
know,
if
don't
check
for,
like
you
know,
string
like
pipe
character
string.
If
you
want
to
see
if
something's
a
union
it.
Actually,
what
you
want
to
do
is
like
iterate
one
character
at
a
time
and
like
whenever
you
reach
the
end
of
an
expression,
you
sort
of
like
update
a
state.
B
That's
a
lot
more
efficient,
so
one
cool
thing
that
I
can
kind
of
show
real
quick
is,
is
we
do
like
have
performance
testing
and
we've
built
these
like
custom
tools
that
will
test
the
performance
of
our
runtime
code
and
our
types
in
parallel.
So
this,
like
is
a
measure
of
the
number
of
instantiations
created
when
you
Define
like
a
particular
type,
and
these
types
are
based
on
just
generating
a
bunch
of
cyclic
types
in
a
scope.
B
So
you
can
kind
of
see
what
this
definition
looks
like,
unfortunately,
I
didn't
actually
show
what
a
scope
was
or
how
it
looked
in
the
original
demo,
but
basically
Scopes
are
sets
of
types
where
they
can
reference
each
other.
B
So
you
can
see
here
that,
like
I'm,
referencing,
user,
3
and
user
3
is
defined
here
to
be
something
else
and
they
can
be
recursive
and
cyclic,
and
everything
will
be
perfectly
inferred
so,
for
example
like
if
I
start
actually
interacting
with
this,
you
can
see
here's
all
the
types
in
there
and
then
so,
if
I
infer
it,
you
can
see
that
I
have
these
properties
on
it,
and
you
know:
okay,
so
the
first
member
or
whatever,
then
that
has
these
properties.
It's
just
some
randomly
generated
nonsense
type.
B
But
the
point
is
that
you
know
so
say
that
you
have
like
one
of
these
crazy
cyclic
Scopes.
It's
based
on
hundreds,
a
hundred
different
types
that
are
all
referencing
each
other.
This
is
what
it
looks
like
to
actually
interact
with
like
it's.
It's
actually
instantaneous,
there's
no
delay,
even
if
it's
parsing
this,
like
massive
massive
type
with
all
these,
like
cyclic
recursive
references,
it's
actually
it
was.
We
refined
it
a
lot
and
we
found
that
this
strategy
works
really
really
well.
I.
B
Think
a
lot
of
people
are
used
to
like
typescript
types,
doing
crazy
things,
but,
like
you,
have
to
worry
about
them
like
crashing
the
typescript
server
and
not
being
very
efficient,
but
we've
actually
tested
this
up
to
500
recursive
cyclic
types,
I
think
this
one.
B
You
can
start
to
notice
a
little
bit,
there's
like
a
little
bit
of
lag,
but
it's
still
really
fast,
especially
after
you
initially,
you
know
get
started
with
the
inference
or
whatever,
and
then
that
stuff
is
cached,
it's
very
usable,
so
yeah
I
feel
like
that's
one
of
the
really
exciting
aspects
of
it
is
you'd.
Think
that
there'd
be
this
trade-off
of
like
oh,
if
I
like
scale
up
and
add
complexity,
this
strategy
isn't
going
to
scale,
but
actually
this,
like
scope
system,
is
super
powerful.
B
It
you
know,
does
scale
to
like
incredibly
large
Scopes
that
are
still
sort
of
immediately
inferred
and
give
this
really.
You
know
instant
feedback
for
everything
you
type
still
and
even
cooler.
I
mean
this
is
whole
rabbit
hole
but
basically
Scopes
actually
just
like
Scopes
in
code.
They
can
actually
import
support
one
another
or
extend
one
another.
B
So
it's
like
really
this
whole
module
system
where
I
could
like
Define,
you
know
I,
could
Define
a
scope
and
say,
for
example,
okay,
so
I'm
gonna
call
it
types
and
I'll
say:
okay,
you
know
we
have
like
a
is
a
string
and
B
is
you
know,
I,
don't
know
some,
he
is
a
Boolean
or
whatever.
So
this
is
a
scope,
then
you
compile
it
like
this,
and
so,
if
I
Mouse
over
it
I
immediately
see
it's
like
this
space.
B
Where
a
is
a
string
and
B
is
some
key
and
I
can
use
it.
Just
like
the
other
types,
I
can
say
like
a
and
then
I
can
validate
pass
in
some
data
and
it'll
give
me
a
check,
result:
Based,
On,
A,
String,
but
yeah.
It's
really
kind
of
this,
like
mind-blowing
thing
where
actually,
if
I
wanted
to
then
say,
like
you
know,
I'm
going
to
define
a
different
scope
and
let's
say
that
I
wanted
to
find
c.
B
As
being
you
know,
having
a
key
a
that
references,
a
type
A
and
B
will
be
be,
let's
say
like
an
array
of
bees.
Well
right
now,
it's
going
to
tell
me
like
this
stuff
doesn't
exist,
and
it's
going
to
give
me
some
like
autocomplete
nonsense
about.
B
Maybe
you
met
any
or
alpha
or
alphanumeric
okay,
but
what
I
can
actually
do
is
if
I,
then
type
Imports
and
then
I
can
import
this
other
scope,
that
I've
defined
this
stuff
all
resolves
now
and
so
like
both
from
within
typescript's
type
system,
and
when
you
actually
do
this
validation
at
runtime.
You
can
actually
see
that
you
know
now
Sub
Stop
oops.
B
Well,
let's,
let's
also
compile
it
and
then
you'll
see
that,
like
this
other
scope,
if
you
look
at
c
we'll
just
infer
it
if
like
because
if
we
wanted
to
you,
know,
reuse
the
type
or
something
like
that,
this
would
be
the
way
that
you
extract
that
oops.
Why
is
it
telling
that
doesn't
exist?
That's
the
same
thing
right.
Definitely.
A
B
A
B
There,
but
basically,
if
you
actually
look
at
the
way
that
it's
inferred
you'll
see
it's
like
a
is
a
string
and
B
is
some
key
Boolean
and
it's
an
array
of
that
because
that's
how
I
wrote
it
in
this
like
updated
scope.
So
basically
it's
like
this
whole
module
system.
You
can
Define
any
kind
of
like
inter-referential
types
and
recursive
types
and
cyclic
types,
and
it's
very,
very
scalable,
so
I'm
super
excited
to
be
sharing
it,
and
hopefully,
I
didn't
go
on
too
long
about
some
of
this
nonsense.
But.
A
No,
while
you
were
going
on
about
it,
people
said
like
nice
job,
someone
said:
wait,
you
guys
got
the
pipe
operator
that
they
that
person
I
believe
they
work
with
Astro,
or
at
least
they
contribute
to
it.
Someone
else.
A
Seen
another
one
that
said
whoa
this
should
be
submitted
as
a
perf
test
to
the
typescript
team.
Amazing
work,
baby.
B
Oh,
thank
you.
I,
definitely
really
appreciate
it.
So
yeah
I
can
kind
of
show
briefly
there's
this
concept
of
morphs,
which
is
like
you
have
a
certain
input,
and
then
you
get
a
certain
output.
So
we
tried
really
hard
to
like
make
that
concept
understandable
for
people
so
like.
Let's
say,
I'm
gonna
write
a
morph
called
par
string
line
and
so
we'll
Define.
This
I
hope
that
I
actually
import
type.
Okay,.
A
B
That
do
it.
Okay,
hopefully
that
actually,
oh
it's
just
telling
me,
maybe
that
I
didn't
write
anything
yet.
Okay,
great
so
basically
I
could
say
it's
a
string
and
yeah.
You
can
use
this
pipe
operator
if
you
want
there's
also
like
a
morph
helper
function.
That
does
the
same
thing.
B
If
you
don't
like
operators
or
you
don't
know
what
pipes
are
or
whatever,
and
then
you
could
say,
okay
well,
I
want
to
take
the
string
as
input
and
then
what
I
want
to
return
is
the
length
of
the
string,
and
so
then
what
you'll
see
represented
here
is
to
type
with
an
input,
type
of
string
and
an
output
of
number,
and
so
basically
you
can
do
any
kind
of
like
arbitrary
Transformations
like
that.
You
can
chain
them
together.
You
can
do
arbitrary,
narrowing
so
like.
B
Let's
say
that
I
wanted
to
say
it's
a
string,
and
this
is
called
a
narrowing
function
and
I
would
say,
like
the
string
length
has
to
be
five,
that
wouldn't
really
be
something
you
could
represent.
Actually
in
typescript,
so
I'll
pick
something
different.
B
Let's
say
that
the
string
had
to
be
Foo
and
then
I
could
write.
Something
like
s
is
food.
You
I,
just
like
you
do
in
typescript
oops.
Well,
that's
not
how
you
write
typescript
but
like
this
is
how
you
write
typescript
and
then,
if
you
look
at
this,
it
will
actually
say
it's
food,
because
what
it
means
is
like
it
was
a
string
initially
I
checked.
It
was
a
string
and
then
I
passed
it
to
your
function
and
that
narrowed
it
so
that
the
final
type
was
Foo.
B
So
it's
got
got
a
lot
of
features.
I
think
the
biggest
problem
right
now
is
I'm
like
a
little
bit
behind
on
documenting
all
of
them,
so
I'm
working
very
hard
to
try
to
get
caught
up
on
that,
but
in
the
meantime,
I
just
added
support
for
that
autocomplete
stuff
that
maybe
you
guys
saw
earlier
so
that
when
you
start
typing,
you
can
actually
see
this
like
list
of
all
the
available
keywords,
including
the
keywords
that
are
in
your
scope
like
this.
B
So
that
is
a
nice
way
to
like
sort
of
build
an
intuition
about
what's
available
at
any
given
point
in
time
and
what
you
can
use
you
can
see.
We
have
these
like
parse
dates
and
parse
integers,
and
all
these
nice
convenient
types
so
yeah
really
exciting
stuff.
A
They
said
they
and
you
might
have
already
probably
showed
this.
They
said.
I
always
have
an
issue
within
one
type
depends
on
another.
For
example.
Oh
yes,
and
you
saw
the
the
comment
that
someone
wanted
a
little
bit
bigger,
making
one
type
depend
on
the
other,
for
example,
if
something
is
is
multi
equals
through
true
then
make
options
equals
Jam
an
array
of
strings,
otherwise
options
equal
strings.
How
would
Arc
Type
handle
this
I
hope?
I
didn't
read
this
really
bad
I'm.
Sorry.
B
I'm
trying
to
parse
it
right
now.
Let
me
see
it's
multi.
If
it's
something
I
I,
don't
know
so
it
kind
of
sounds
like
this
would
be
something
that
would
be
like
a
typescript
generic
function.
Maybe
where
you'd
like
pass
in
a
generic
parameter
like
is
multi
and
then
based
on
that
you
would
like
narrow
down
the
type
of
what
options
would
be,
but
I
would
so.
Our
archetype
does
not
deal
with
functions.
B
So
the
idea
is
like
validating
data,
so
you
know
basically
anything
that
represents
like
static
data
or
even
those
like
morphs,
you
know
are
things
that
are
built
into
archetype
but
like
it,
wouldn't
be
for
defining
like
a
generic
function
that
takes
in
some
options
and
narrows
them.
So,
whatever
struggles
you're
having
with
typescript
there,
you
know
maybe
reach
out
to
me
directly.
I
might
be
able
to
help
I
have
written
a
lot
of
generic
functions,
but
it
wouldn't
be
something
that
you
could.
A
Gotcha.
Okay!
Sorry
about
that,
one
which
someone
was
asking
like
what
other
languages
does
it
support
if
any.
B
So
not
I
mean
it's
for
typescript
and
JavaScript
right
now,
I
know
I
meant.
Maybe
you
were
around
at
the
beginning
of
the
stream
I
mentioned
like
one
of
the
really
cool
things
about
this
is
you
can
see?
This
syntax
is
basically
just
Json,
so
you
can
serialize
it
and
you
could
use
it
from
other
languages
and
that's
true,
but
it's
just
you
know
it's.
B
It's
me
and
I've
had
another
developer,
helping
out
for
several
months
on
the
project,
so
we've
definitely
got
our
hands
full
with
like
typescript
and
JavaScript,
and
we
know
there's
a
lot
of
really
great
validators
out
there
already
in
the
ecosystem,
so
we're
kind
of
focused
on
like
making
sure
that
we're
actually
adding
value
to
to
you
guys
and
that
ecosystem
first
and
then,
once
we
really
nail
that
down
and
and
all
this
stuff
kind
of
congeals
into
something
that
that
people
really
love
to
use
within
typescript
that
at
that
point
you
know
we'll
start
to
think
about.
A
A
On
that
note,
then
I
know
you
said
it's
you
and
another
person
contributing.
If
people
were
interested,
how
could
they
contribute.
B
Yeah,
we
would
love
to,
you,
know,
have
have
more
contributors.
We've
had
a
few
recently,
as
I
mean
I
kind
of
like
initially
announced
the
project
publicly
about
a
month
ago,
and
so
at
that
point
we
definitely
got
got
some
initial
interest
and
a
few
people
making
some
contributions,
which
was
awesome
but
we'd
love
to
like
have
the
community
contributing
and
giving
us
feedback
on
a
larger
scale.
B
So
we
have
a
guide
written
up
about
that
and
this
little
section
in
our
in
our
readme,
so
I
think
you
have
a
link
to
the
GitHub
there,
which
is
up,
which
is
great,
and
so
oh
here
it
is
right.
So
if
you
look
at
this
section
here
for
contributions,
there's
a
little
summary
of
it
talks
about
creating
an
issue
and
there's
this
guide
here.
B
That
will
tell
you
like
how
to
clone
the
repo
and,
just
you
know,
kind
of
walk
you
through
the
whole
process
of
of
of
getting
started
and
being
a
pull
request,
and
some
of
the
some
of
the
you
know,
nuances
of
working
with
a
repo
like
this.
That
has
some
types
in
it.
That
might
be
a
little
bit
unfamiliar
if
you
haven't
done
a
bunch
of
crazy
typescript
stuff,
but
we
try
to
kind
of
walk
through.
You
know:
here's
how
we
try
to
approach
some
of
these
problems.
B
We
like
to
maintain
this
parallel
between
our
runtime
code
and
our
static
analysis
or
the
static
types
that
are
created
basically
based
on
that
input.
So
hopefully
this
will
be
a
good
guide,
but
if
you
have
any
questions,
definitely
reach
out
to
me
directly.
We
have
a
get
a
sorry,
a
Discord,
that's
been
a
really
nice
place
for
people
to
you
know,
communicate
about
this
stuff,
so
I
would
definitely
recommend
joining
there
and
you
know
reaching
out
to
me.
B
A
And
then
your
Discord
I
know
you
put
the
link
here,
but
I
feel
like
it'll,
be
hard
for
people
to
copy,
because
I
can't
actually
paste
it
in
the
comments.
Is
it
it's
listed
on
your
website
right,
yes,
okay,
great
awesome
and
I
saw.
B
Yeah,
you
can
click.
The
link
here,
I
think
there's
a
few
there's
a
few
links
to
it
like
throughout
all
the
documentation.
Yeah
see
here's
another
one.
So
if
you
go
to
the
GitHub
page
in
the
readme
should
be
able
to
get
there
from
there
I'll
look
at
where
else
there
might
be
one
on
the
website
directly
as
well,
but
for
now,
let's
just
stick
with.
If
you
go
to
the
GitHub
review
and
get
to
the
Discord
from
there
perfect.
A
Also,
another
way
of
people
are
like
I
want
to
contribute,
but
not
really
sure
how
to
start
I
mean
or
like
might
feel
like
a
little
bit
overwhelmed.
The
small
easy
way
to
contribute
is
starring
the
projects
and
then
using
it
as
well
and
and
giving
some
feedback
so
go
ahead
and
and
start
trying
it
out
as
well.
Someone
said
there
they're
joining
the
Discord
right
away.
This
looks
good
and
someone
said
paging
that
oh,
my
gosh
I
had
Matt
on
on
a
twitch
stream,
showing
us
typescript
a
while
back.
B
Just
be
sharing
it
throughout
the
community
and
yeah
Matt's
such
a
great
communicator
and
understands
typescript,
so
well,
I,
definitely
Envy
his
sort
of,
like
just
general
connection
with
the
community
in
general.
Understanding
about
how
to
communicate
about
complex
topics
really
clearly
I
tend
to
ramble
on
a
lot
and
be
be
less
clear.
So
you.
A
Know
something
to
Aspire
to
no
everybody
has
their
own
communication
style.
I
think
it
was.
Yours
was
really
helpful.
Okay,
I'm
going
to
switch
into
some
other
questions,
less
about
archetype
and
and
some
about,
like
maybe
your
journey
as
well.
So
just
gonna
stop
the
screen
share
for
a
little
bit.
But
folks
are
oh,
and
someone
said
you
know:
Matt
had
the
advantage
of
being
a
teacher
before
I
guess
so
yeah.
It's.
A
Tell
us
about
I
love
like
that,
you
you're
so
embedded
into
open
source.
You
you
sound
like
you've,
been
making
more
than
one
project
in
the
past.
What
are
some
challenges
that
you've
encountered
as
an
open
source
maintainer.
B
Yeah
I
I
mean
I,
think
that
obviously
there's
a
sort
of
like
core.
You
know
conflict
between
I
want
to
like
have
you
know,
steady
sorts
of
income
and
also
to
like
be
doing
the
things
that
are
optimal
for
the
open
source.
Community,
certainly
like
with
a
tool
like
this
I
feel
like
it
has
so
much
potential,
because
when
I
was
at
Amazon
last
I
was
building
tools
for
other
developers.
I
was
I,
was
in
esthet
and,
like
I
was
kind
of
doing
something.
B
B
So,
like
you
know,
there's
kind
of
that
like
conflict
between
wanting
to
do
the
most
General
thing,
that's
best
for
the
most
users,
but
also
making
it
financially
sustainable,
so
I'm
working
on
that
stuff
trying
to
figure
out,
you
know,
sponsors
and
trying
to
figure
out.
You
know
how
opportunities
for
VC
funding
and
things
like
that.
B
So
you
know,
if
you
know
anyone
feel
free
to
send
them
my
way.
I'd
love
to
talk
to
them,
but
but
yeah.
That's
a
big
challenge,
I
think
from
like
a
more
personal
level,
I'm
like
a
super,
obsessive
person.
This
project
was
like
by
far
the
thing:
I
mean
I've,
been
always
a
passionate
person,
but
like
man
was
I
like
when
I
was
working
on.
This
I
was
like
I
can
build
a
type
system
like
this.
B
This
is
like
an
amazing
thing
to
work
on,
and
I
was
probably
working
like
90
hours
a
week,
the
last
year
and
a
half
and
like
I,
just
like
so
obsessed
and
just
so
excited.
B
But
if
you
kind
of
just
got
like
too
caught
up
in
that
and
you're
not
attending
to
you
know
like
oh,
how
have
I
been
feeling
like
when
I
wake
up
in
the
mornings
and
like
do
I
really
have
the
same
like
energy
level
that
I
had
like
last
week
or
whatever
it
is,
it
can
be
exhausting
and
one
of
the
biggest
things
that
I've
really
found
is
actually
connecting
with
users,
and
you
know
doing
things
like
this.
B
Getting
feedback
from
people
like
sharing
your
work
is
really
really
crucial,
even
if
it
feels
like
there's
like
something
big
that
you
want
to
do,
and
you
have
these
like.
Long-Term
sort
of
like
ambitious
goals,
like
my
biggest
biggest
recommendation,
would
be
to
like
share
it
along
the
way
and
just
always
be
as
much
as
you
can
just
like.
B
Finding
excuses
to
communicate
about
it
and
talk
to
people
about
it
because
like
for
me
at
least
like
that's
what
really
fuels
my
excitement
and
like
reignites
it
when
I'm
like
feeling
bogged
down
by
some,
you
know
I
I'm,
on
I'm,
on,
like
130,
commits
on
some
Brands
now
but
like
there
was
actually
one
branch
a
few
months
ago
that
I
didn't
want
to
ever
talk
about
again,
but
I
think
it
was
like
1300
commits
and
it
was
like.
It
was
absurd.
B
It
was
just
like
a
total
rewrite
of
the
whole
repository
and,
like
you
just
get
bogged
down
by
stuff
like
that,
and
it
can
just
be
exhausting
if
you're
not
like
having
a
team
and
like
having
users
who
of
people
you
can
interact
with
for
that
energy.
So
the
biggest
thing
I
think
is:
is
the
community
and
just
making
sure
that
you're
using
that
to
stay
energized,
yeah.
A
B
Amazing
yeah
to
like
I
mean
because
I
worked
on
this,
so
much
mostly
like
in
isolation
and
like
literally
in
isolation
because
of
covet
and
everything
also
but,
like
you
know,
figuratively
also
like
when
I
did
initially
release
it
and
like
people
just
really
seemed
interested
in
the
nicest
thing
is
like
since
then,
a
lot
of
people
like
really
went
super
deep
because
again,
I'm
kind
of
behind
the
documentation
like
there's
a
lot
of
stuff,
you
kind
of
have
to
like
discover
a
little
bit
now
we're
working
on
publishing
new
docs,
but
like
people
have
got
back
to
me
with
these,
like
super
crazy
scenarios.
B
They're
like
doing
this
like
really
deep
stuff
with
it
and
they're
like
imagining
new
ways
to
use
archetype,
that
I
didn't
even
conceive
of
and
like
That's
so
exciting
to
just
like
see,
people
kind
of
like
take
it
and
like
run
with
it
and
find
new
things
to
do
with
it,
and
so
so
that's
just
been
incredibly
incredibly
rewarding
for
me
like
whenever
you
really
like
pour
your
heart
into
something,
and
then
you
have
an
opportunity
to
like
see.
Other
people
like
you
know,
really.
B
You
know
running
with
it
and
like
find
finding
new
ways
to
use
it
and
just
going
so
deep,
so
they
sort
of
like
understand.
You
know
what
went
into
making
it.
It's
just
like
an
incredibly
rewarding
experience,
so
the
more
you
can
seek
those
opportunities
out.
The
better
and
I
would
also
say,
like
I,
know
it's
kind
of
daunting.
B
This
project
is
crazy
and
it
was
a
lot
of
work
for
sure,
but
I
would
say,
like
you,
don't
need
to
build
something
like
this
to,
like
you
know,
to
like
share
something
of
value
to
the
community.
There's
actually
lots
of
tools
that
are
really
small,
I
mean
like
Cinder
Source
or
someone
comes
to
mind
where
they
like
to
build
really
small
utilities
that
are
super
useful
that
have
been
used
downloaded.
B
You
know
millions
and
millions
of
times,
and
you
know,
are
used
like
all
around
the
world
that,
like
solve
a
really
you
know
a
really
common
problem
in
like
a
really
elegant
way.
Like
you
know,
you
can
build
something
like
that,
and
just
I
would
always
like
focus
on.
B
You
know
coming
up
with
the
right
solution
and
just
limit
the
scope
of
the
problem
until,
like
you
really
feel
great
about
like
what
what
you've
done
and,
like
you
know,
you're
like
yes,
like
I,
understand
this
whole
problem,
I'm,
not
adding
any
like
extra
bells
and
whistles
like
this
is
basically
you
know
the
ideal
solution
of
this
problem,
and
it
can
just
be
something
really
simple,
but
you
know
you
can
focus
on
sharing
that
and
I
think
you
know
that's
actually
probably
a
great
approach,
because
from
there
you
can
start
to
engage
with
the
community
and
sort
of
like
scale
up.
A
Love
it
so
exciting.
I
want
to
address
a
couple
of
comments.
Dan
came
in
and
said:
hi
is
this
just
like
other
other
people
asked
I
know
if
fuzzy
bear
was
asking
that
too?
No,
it's
not
like
someone
else
mentioned.
It's
a
slightly
I'm,
sorry,
slightly
simpler
approach
because
you
don't
need
to
like
do
any
chaining
or
really
understand
the
API
there.
Someone
was
asking
and
I'm
really
interested
in
this.
Is
there
going
to
be
some
way
to
fund
your
project?
B
Yeah,
so
there
is
a
GitHub
sponsor.
So
if
you
go
to
the
GitHub
page,
you'll
see
that
and
of
course
you
know
it's
very
meaningful
to
us.
If
you
sponsor
the
project,
I
think
it
just
is
I
mean
it's
nice
to
like
have
a
little
bit
of
income.
But
honestly,
it
also
just
shows
like
an
appreciation
that
I
feel
like
is
really
meaningful.
Obviously,
don't
feel
obligated
to
do
that.
I
know
a
lot
of
you
probably
see
it
the
first
time
like
use
it.
B
If
it's
like
you
know,
adding
a
lot
of
value
that
then
that's
something
that
we'd
really
appreciate,
but
obviously
it's
not
required,
but
yeah
actually
I
think
one
really
promising
thing.
I,
don't
know.
If
you've
heard
of
pedantic
it's
kind
of
the
like
de
facto
standard
for
doing
validation
in
the
python
ecosystem.
They
actually
had
a
library
just
like
this,
like
an
open
source.
Library
that's
been
around
for
for
several
years
and
just
found
it
like
a
company
and
got
Venture
Capital
backing
from
Sequoia.
B
They
got
five
million
dollars
to
like
turn
this
into
like
a
cloud
infrastructure
tooling,
and
things
like
that,
like
all
based
on
their
validation,
all
based
on
their
open
source,
python,
validator,
so
I
do
think,
there's
real
potential.
You
know
a
JavaScript
ecosystem,
also
really
big,
probably
even
a
little
bit
bigger
than
pythons
and
this
tooling.
So
it
it.
Not
only
is
it
like
not
Zod
syntax
but
like
no,
it's
not
based
on
doesn't
use
Auto
to
the
hood
or
anything
like
that.
B
It's
it
doesn't
have
any
dependencies
and
actually
like
under
the
hood.
It's
it's
a
it's
like
a
full
type
system.
So
it's
not
just
like
a
validator
basically
like
when
you
do
intersections
and
do
unions
and
things
like
that.
B
It
can
actually
compute
like
what
the
most
optimal
way
to
represent
those
things
is,
it
knows
when,
like
a
type
is
unsatisfiable,
it
knows
if
one
type
is
assignable
to
another
type,
so
it
can
do
lots
of
things
that,
like
any
other
validator,
can't
do
because
it
kind
of
has
this
like
very
different
sort
of
like
architecture,
and
it's
if
you
want
to
compare
it
to
anything.
It
was
really
based
to
be.
It
was
meant
to
be
like
the
runtime
version
of
typescript,
so
it
like
does
a
lot
of
things.
B
That
typescript
does
it's
not
so
much
to
be
like
I'm
gonna
build
another
Zod,
or
something
like
that.
A
Gotcha
I'm
glad
for
that
that
Clarity
too,
especially
for
for
folks
that
made
it
come
in
later,
I
think
you
kind
of
touched
on
this,
but
I
thought
it
was
a
good
question.
Someone
was
just
asking:
how
do
how
do
you
start
getting
feedback
that
I
think
that's
been
a
hard
thing
for
them
on
whatever
open
source
project
they
may
have,
and
you
talked
about,
like
you
know,
putting
putting
it
out
there
like
putting
the
project
out
there
through
blog
posts
and
like
Twitch,
streaming
and
stuff
like
that,
I
think.
B
Definitely
I
feel
like
Discord
has
been
a
great
source
of
of
interactions
for
me,
I
think
it
is
kind
of
hard
to
like
get
the
first
few
people
in
there.
B
So
I
think
right
now
we
have
like
40
or
something
like
that,
but
but
definitely
like
once
you
start
kind
of
like
growing,
that
community
of
people
who
are
really
invested
in
your
tooling,
like
man
there,
there
are
definitely
people
who,
like
will
give
you
really
specific
feedback
and
have
really
specific
questions
and
I
really
like
to
go
deep
on
some
of
this
stuff,
which,
which
is
you
know,
really
great.
B
Obviously
you
have
to
moderate
it
a
little
bit
with
some
of
your
time
expanding
or
things
like
that,
but
like
it's
definitely
great
to
be
engaging
in
that
way.
I
honestly
think
that,
like
so
it
kind
of
like
when
I
first
posted
it
on
on
Reddit,
like
the
JavaScript
subreddit
and
the
typescript
subreddit
I,
think
those
posts
got
like
a
decent
amount
of
attention
and
then
people
posted
it
on
Twitter
and
it
just
kind
of
got
like
I.
B
Think
a
lot
of
people
became
interested
at
that
point,
and
one
really
good
sign
is
that
it's
kind
of
like
sustained
this,
like
natural
growth
since
then,
where
that
was
I,
really
only
posted
it
like
once
about
a
month
ago
and
I
think
I
got
like
400
stars
or
something,
and
then
from
there
like
we're.
B
Almost
at
a
thousand
now
I
haven't
been
like
really
like
posting
it
directly
like
that
or
like
I've,
been
I
comment
about
it
and
sort
of
like
talk
about
it
when
I
can,
but
but
people
have
just
like
continued
to
use
it
and
and
spread
it
and
stuff
like
that.
So
I
think
that's
a
really
good
sign,
I
think
it.
It
is
really
hard.
B
I
would
maybe
start
by
like
reaching
out
to
to
friends
and
like
the
developer
community
and
asking
them
for
feedback,
and
you
know
asking
them
to
share
it
with
their
friends,
like
that's,
probably
a
really
good
way
to
get
started,
but
unfortunately,
because
it's
not
always
what
we
want
to
do
as
developers.
But
there
is
definitely
like
a
marketing
aspect
to
sort
of
like
getting
tools
like
this
to
grow.
B
So
you
kind
of
have
to
to
think
about
like
what
is
the
feedback
I'm
getting
like
when
I
do,
post
it
on
Reddit
or
Hacker
News
or
whatever,
like?
What
do
people
say?
What
are
they
confused
about?
What's
clear
and
you
kind
of
have
to
like
iterate
a
little
bit
about
your
messaging
and
then
eventually
you'll,
hopefully
find
something
that
kind
of
clicks
with
people
and
then
then
you'll
sort
of
have
that,
like
natural
engagement,
I?
Guess
it's
product
Market
fit
if
you're
like
a
startup
person,
but.
A
Yeah
yeah
and
then
to
just
be
really
loud
on
Twitter.
Like
me,
everything
you
just
said
is
something
that,
like
I
I,
try
to
tell
developers
like
yes,
marketing
feels
cringy
sometimes,
but
you
can
do
authentic
marketing
and
it's
not
like.
Oh,
you
have
to
try
out
my
project.
A
It's
like
hey,
I'm,
I'm,
currently
working
on
archetype
right
now,
like
I
got
this
challenge
of
doing
such
and
such
oh,
but
I
was
able
to
solve
it,
and
maybe
writing
a
blog
post
about
how
you
solved
it
or
doing
a
twitch
stream
like
that
type
of
stuff
helps
people
get
engaged
and
be
like.
Oh,
what
is
what
are
you
doing
over
there,
or
even
like
just
you
showing
up
on
open
source
Friday?
That's
that's
a
an
element
of
that
this
is.
This
is
really
great.
A
B
Yeah
so
definitely
I'm
a
huge
GitHub
fan
and
I
love,
the
extent
to
which,
like
they've,
made
so
many
aspects
of
the
development
process
like
really
directly
integrated
with
you
know,
their
git,
tooling,
and
especially,
like
you
know,
sort
of
like
config
like
code,
is
config
right.
The
idea
of
like,
for
example,
that
I
can
Define
I
can
Define
my
GitHub
actions
in
such
a
way
where
you
know
I
I.
B
Have
this
set
up
to
make
sure
that
my
repository
is
in
a
good
state
where
I
can,
you
know,
run
all
the
tests
across
different
versions
and
then
basically
there's
this
like
forked
process,
it
was
so
easy
to
set
up
because
I'm,
like
maybe
the
only
thing
I
like
dislike.
More
than
doing
like
UI
work,
that
I'm
terrible
at
is
doing
like
devops
work,
which
I'm
even
worse
at
and
just
have
even
less
patience
for
and
but
like
this
was
so
easy
to
work
with
and
yeah
I
got
this
I.
B
Have
this
like
set
up
where
it'll
basically
run
initially
on
like
a
default
Ubuntu
and
like
node
setup,
but
then
it
can
run
across
like
a
matrix
really
easily
of
different
of
you
know:
Mac
OS
and
windows,
and
you
know
previous
versions
of
node,
and
we
actually
even
have
some
built-in
tooling,
which
makes
it
run
across
different
versions
of
typescript
right
now
we
support
4.8
to
5.0,
so
we'll
like
run
all
the
tests
that
validate
all
the
types
and
then
rerun
them
across
4.9
and
4.8
and
GitHub
definitely
makes
all
that
stuff.
B
So
much
easier
actions
has
been
I've,
been
a
really
really
nice
way
to
just
make
sure
that
anytime,
we're
merging
pull
requests
that
we
get.
Lots
of.
You
know
lots
of
assurance
that,
like
we're
not
we're
not
breaking
things,
you
still
have
to
have
good
tests,
so
write
good
test,
but,
like
other
than
that,
you
know,
GitHub
really
helps
to
like
facilitate
actually
running
them
across
platforms
and
and
making
sure
that
you
get
all
that
feedback
directly.
So
it's
been
awesome,
yeah.
A
I
love
that
you're
using
it
as
like
double
assurance
that
you're,
like
yeah,
we
wrote
the
test,
but
also,
let's
just
double,
check
and
GitHub
actions.
I
love,
like
that's
like
the
thing
that
made
me
excited
about
GitHub
like
At.
First
I
was
like
oh
okay,
I
just
put
my
code
on
here,
but
I
was
like
get
up
action.
This
is
cool.
A
This
is
thank
you.
Thank
you
so
much
for
showing
us
that
I
want
to
switch
into
some
of
our
like
non-technical
questions
just
for
fun
and
before
that
I
do
want
to
say,
like
quickly
happy
birthday
to
learner0418.
They
literally
watch
the
stream
every
Friday
and
I,
like
it
doesn't
matter
like
there's
other
people
that
come
they're
always
here
so
I
just
do
want
to
recognize
it
and
be
like
Happy
Birthday
to
them.
Thank
you
forever.
B
A
B
Man,
so
okay,
I,
did
do
a
little
bit
of
C,
plus
plus
in
school.
I
actually
dropped
out
of
college,
because
I
was
like
I
like
learning
on
my
own
and
I'm,
like
very
self-motivated
and
I
would
rather
teach
myself
to
code,
so
I
was
doing
a
little
bit
of
C
plus
plus,
but
I
was
like.
This
is
boring.
B
I
just
want
to
like
get
a
job
somewhere
and
build
something
real,
and
so
that's
gonna,
sound
bad,
but
actually
I
got
a
job
at
this
kind
of
not
the
best
company,
but
it
was
like
a
way
to
into
software,
and
I
was
like
writing.
B
Visual
Basic
for
application,
like
I
literally
wrote
like
Excel
scripts
like
there
was,
you
know
not
like
formulas
or
whatever
it
was
like
a
kind
of
language,
but
that
was
like
my
intro
to
coding
was
like
use
this
crazy,
terrible
language,
that's
in
Excel
or
whatever,
but
you
know
it's
all
about
iteration
right.
It's
just
like
you
start,
and
then
you
know
just
seeing
like
okay,
what
principles
work
for
Designing
code-
that's
maintainable
and
stuff
like
that,
and
so
it
was
a
good
enough
language.
B
A
No
I
I
could
relate
a
little
bit
when
I
was
in
Community
College.
They
made
me
do
like
a
Visual
Basic
one
and
two
class
and,
like
I
still
didn't,
really
know
what
programming
is
was
then
so
I
was
like
what
is
this
I'm
so
confused,
so
yeah
yeah?
Oh,
wait.
Someone
else
had
a
question
that
I
think
might
be
better
than
than
my
own
where'd.
You
get
the
fit
like
the
bow
tie.
Action
yeah.
B
So
this
is
actually
a
gift.
I,
don't
know
if
she
she's
in
the
Stream,
but
my
sister
actually
gave
me
this
bow
tie
I.
Think
it's
like
based
on
a
real
circuit
board
somewhere
or
something
like
that,
but
I
sometimes
wear
it.
If
I'm
doing
like
fun
coding,
stuff,
I'm,
a
big
bow
tie,
Enthusiast
I,
think
I
own,
like
100
bow
ties
or
something
and
yeah
I
feel
like
the
knot
went
well
today.
B
I,
don't
know
at
the
time
I
had
like
where,
where
where
I
could,
where
you
could
get
one,
but
if
you're
really
into
it,
then
then
maybe
I
can
refer
you
to
my
sister
and
she
can
let
you
know
where
she
got
it.
Yeah.
B
A
People
know
it's
actually
real.
Oh
Dad's
really
excited
for
me
to
ask
the
Beyonce
question
I'll
get
to
it
soon.
Oh
I
realize
I'm
over
time.
So
sorry
I'll
go
a
little
bit
faster.
Then
if
money
wasn't
an
issue,
how
would
you
ideally
spend
your
time
like
job
wise,
yeah,
job-wise.
B
I'm
trying
to
raise
money
but
like,
but
this
is
I've
been
so
passionate
about
this,
and
it's
just
brought
me
like
so
much
joy
to
work
on
like
understanding
type
Theory
and
like
building
out
this
whole
system.
That
I,
just
am
just
it
really
has
been
like
this
is
what
I
want
to
do
and
I
think
there's
another
question
about
like
what
would
be
your
ideal
work.
B
Open
source
project
to
work
on,
like
I,
am
working
on
the
thing
that
I've
been
the
most
excited
about
of
anything
I've
ever
worked
on
and
I'm,
just
so
passionate
about
it.
So
I
really
feel
like
blessed
to
have
even
like
had
this
opportunity
to
build
this
and
yeah.
We
will
see
what
what
happens
with
all
this
VC
funding,
stuff
and
everything,
but
a
lot
of
early
signs
are
promising.
So,
like
you
know,
I'm,
pretty
optimistic
that
we're
going
to
be
able
to
you
know
make
this
work
in
the
long
term.
Yay.
B
B
Because,
like
I'm,
just
one
of
those
people,
just
like
eats
whatever's
in
front
of
them,
sort
of
and
I'm
not
like
yeah
I
mean
so.
A
B
Wife
is
like
an
amazing
vegan
cook,
that's
like
literally
her
job
and
so
she's
super
super,
talented
and
like
makes
all
this
awesome
stuff
that
I,
like
basically
benefit
from
because
she
needs
someone
to
feed
it
too.
B
So
that's
that's
really
great,
but
like
I
know
that
like
when
she
goes
on
vacation
or
something
like
that,
like
I
will
literally
just
eat,
PB
fit,
which
is
like
this
peanut
butter
protein
like
mix
like
with
with
granola
like
and
cereal,
and
it's
like
I'll
just
eat,
that
for
like
every
meal,
because
it's
like
really
easy
and
it's
relatively
healthy
and
I,
just
don't
have
to
think
about
it,
so
that
I
can
just
like
devote
all
my
enemies
like
one
of
those
like
you
know,
whatever,
like
yeah
the
the
like
Soylent
Green,
what
I'm,
just
like
all
like
I'm
just
gonna,
be
optimally.
B
B
B
Wait:
okay,
I
just
want
to
comment
really
quickly
on
to
the
person
who
said
that
the
11th
doctor
said
bow
ties
are
cool
and
Matt
Smith
was
actually
my
original
inspiration
for
starting
to
wear
bow
ties
like
I've
done
this.
Basically
my
whole
adult
life,
but
like
he
was
the
reason
why
I
was
like
obsessed
with
Matt
Smith
and
I
bought
bow
ties
were
cool,
so
just
wanted
to
call
that
out.
That's
actually
where
this
all
came
from.
So
it
was
just
funny
to
see
it.
There.
B
Again,
if
I
say
GIF,
I
guess
I
think
that
that
is
probably
the
like
basic
boring
answer,
but
I
buy
the
whole
argument
about
you
know.
Graphics
starts
with
a
hard
G
and
whatever
the
original
Creator
said,
you
know,
I
feel
like
that's
less
important
than
like
the
objective
truth
of
the
universe
and
like
logic,
so
you
know
if
one
of
you
guys
starts
using
archetype
and
you're
like
actually
the
Paradigm
you
should
be
using.
Is
this
like?
Don't
Define
the
types?
The
way
that
David
does
he's
actually
wrong?
B
Like
you
know
what,
if
you
actually
have
a
clear
case
for
why?
Why
that's
that's
true
then
like
just
because
I
wrote,
The
Thing
originally
does
not
give
me
ultimate
authority
over
it
for
his
entire
life,
so
I
buy
the
argument
about
like
you
know,
it
just
makes
more
sense
if
it's
a
hard
G,
so
GIF,
okay,.
B
A
Seems
everybody
is
waiting
for,
but
no
no
pressure,
what's
your
favorite
Beyonce
song
and
if
not
Beyonce,
what's
your
favorite
song
yeah.
B
I
think
it's
probably
Crazy
In
Love
I
was
thinking
about
a
little
bit
and
like
the
first
thing
about
my
head
was
single
ladies,
but
then
I
thought
about
like
I,
have
a
lot
of
memories
about
crazy
and
love
and
I
always
think
about
my
wife.
And
so
that's
always
like
a
nice
aspect
of
it,
whereas
like
Single,
Ladies
I
can't
relate
as
much
to
like
the
perspective
of
being
a
single
lady,
because
I'm
a
man.
A
B
B
Yeah
so
I
feel,
like
the
other
one
resonates
with
me
a
little
bit
more
weird.
Random
anecdote
is
that,
during
that
song,
like
in
the
recordings,
I
listened
to
it
on
headphones,
like
this
there's
like
this
one
point
at
which,
like
there's
kind
of
this
background,
sound
that
kind
of
sounds
like
David.
B
It's
not
actually
that,
but
like
it's
just
like
it's
some
some
weird
thing
where,
whenever
I
hear
that
song
like
I,
have
to
like
take
off
my
headphones
and
like
look
if
my
wife
is
trying
to
call
me
because
I
actually
something
in
the
song
like
sounds
like
they're
like
saying
the
word
David
like
in
the
background,
it's
very
bizarre
but
I
love
that
song
and
yeah
definitely
lots
of
good
memories
of
associated
with
it.
So
that
would
be
my
number
one
love.
A
That
choice
as
a
kid
I
spent
a
lot
of
time
with
my
friends
dancing
to
that
song
like
putting
the
music
video
on
and
being
like.
I
could
dance
like
Beyonce.
But
thank
you
thank
you
so
much.
This
is
really
fun.
Y'all
go
ahead
and
check
out
archetype.io
for
the
website.
They
also
have
github.com
archetype
IO
archetype.
A
If
you
wanted
to
contribute,
if
you
wanted
to
start
the
project,
if
you
wanted
to
try
the
project
out
and
if
you
wanted
to
join
the
Discord
and
also
if
you
wanted
to
make
a
little
bit
of
a
financial
contribution,
because
David
has
been
putting
his
heart
and
soul
into
this
project,
you
can
go
ahead
and
check
out
the
sponsors
page
here
and
then
is
there
anything
else
that
I'm
missing
that
you
want
me
to
to
highlight?
Maybe
the
Twitter
or
something.
B
Oh
yeah,
you
can
check
out
the
Twitter
like
I
I,
have
a
Twitter
account
where
I,
mostly
post
about
archetype
and
then
I
think
I
sent
you
the
one.
That's
like
the
archetype,
Twitter
account.
B
We
just
actually
announced
like
a
new
release
a
few
hours
ago
that,
like
kind
of
some
of
the
autocomplete
functionality
that
you
saw
there
was
was
new,
so
would
be
excited
to
you
know
you
keep
an
eye
on
that
for
announcements
and
we'll
be
excited
to
get
your
all
your
feedback
on
on
how
that
feels
to
use
I
feel
like
initially
I
was
sort
of
this
like
purest
kind
of
hey.
Like
you
know,
you
already
get
this
like
really
specific
error
message.
B
If
there's
anything
wrong
like
why
you
need
autocomplete
but
like
realistically
then
I
like
added
it
and
I'm
like
this
is
way
better.
This
is
like
the
best
thing
in
the
world.
You
should
definitely
have
autocomplete,
it's
so
good
for
discoverability
because
like
if
someone
starts
typing
and
then
they
can
see
like.
Oh,
here's
all
the
built-in
keywords,
that's
kind
of
amazing,
and
it
like
takes
a
little
bit
of
pressure
off
me
to
like
finish
the
documentation
as
fast,
because
people
have
some
idea
what
they
can
use.
B
So
we'd
love
to
you
know
see
what
you
guys
all
think
about
that
mess
around
with
it.
Try
it
it
will
be
fun,
try
to
break
it
because,
like
I,
think
people
like
like
doing
that-
and
you
know
it's
pretty
hard
to
break
I'll
like
challenge
you
to
break
it
because
it
it
it's
not
very
many
bugs
and
I
think
that
they're
like
pretty
deep
a
few
people
have
found
one.
But
if
you
can
find
a
new
one,
I'll
be
very
impressed,
so
you
know
try
it
out,
go
for
it
and
like.