►
From YouTube: .NET Design Reviews: GitHub Triage
Description
00:00:00 - Approved: Expose RuntimeWrappedException constructor https://github.com/dotnet/corefx/issues/24946#issuecomment-342573013
00:04:12 - Approved: Provide IEnumerable(T) support for Memory(T) https://github.com/dotnet/corefx/issues/24854#issuecomment-342577441
00:18:47 - Approved: Add String support to ReadOnlyMemory(char) https://github.com/dotnet/corefx/issues/25085#issuecomment-342585466
00:47:24 - Approved: Add SpanExtensions.LastIndexOf https://github.com/dotnet/corefx/issues/24839#issuecomment-342587703
00:53:35 - Approved: Additional API for DbProviderFactories in .NET Core https://github.com/dotnet/corefx/issues/20903#issuecomment-342605350
E
E
A
G
I
J
H
E
H
K
H
E
D
D
H
C
M
H
D
H
H
It's
not
I,
I
mean
it's
not
like
we,
so
we
cannot
implement
the
interface
on
on
span
on
memory,
because
it
cannot
spawn
scanner
on
memory
we
could
but
I
kind
of
you
know.
People
want
to
use
it
to
interact
with
existing
api's,
but
imagine
that
it's
memory
of
parts
like
a
numerating
by
single
byte
is
such
a
wrong
thing
to
do.
E
H
So
I
don't
know,
it's
kind
of
you
know
it's
providing
API
is
that
kind
of
shouldn't
use,
except
for
interrupts
scenarios,
so
I
think
in
one
of
the
comments
I
suggested
that
maybe
you
can
write
like
a
bridge.
Id
I
know,
instead
of
implementing
it
directly
on
memory.
Just
oh.
Actually,
this
is
the
proposed
API.
So
the
title
has
an
ehh
so
that
a
proposed
API
is
that
we
provide
an
extension
method.
It
takes
memory
in
the
wraps
it
in
either
I.
H
D
Also,
probably
more
efficient
to
do
it.
This
way.
For
the
majority
of
use
cases,
I
mean
if
you
have
a
method
that
accepts
an
ienumerable,
and
you
wanted
to
give
a
memory
to
it.
If
memory
implemented
the
interface,
we
would
first
be
boxing
to
pass
the
memory
in
and
then
we
would
call
get
a
numerator
on
it
and
it
would
allocate
a
new
enumerator
object
by
having
this
to
enumerable
extension
method.
The
innumerable
that
we
return
can
also
double
the
same
numerator,
correct.
D
G
E
H
Well,
the
so
this
is
yeah.
This
is
true
for
everything.
Api
is
bridging
API.
Is
that
the
definition
currently
are
not
the
most
efficient,
not
the
best
api
is,
but
they
let
you
keep
going
while
you
wait
for
the
platform
to
adapt
to
new
exchange
types.
So
in
this
case
you
can
imagine
that
at
some
point
there
would
be,
you
know,
create
badge
that
doesn't
take.
I
in
a
mobile,
it
takes
memory
of
tea,
and
then
it
uses
the
indexer
I
mean,
gets,
expand
and
uses
the
index
or,
to
you
know
copy
that
the
floats.
H
D
H
D
B
D
Are
already
methods
be?
We
have
for
Interop
with
with
other
systems,
but
we
wouldn't
you
know
if
we
saw
it
in
some
type
loop
somewhere.
We
would
encourage
people
not
to
call
like
memory
to
array,
so
this
doesn't
seem.
It
seems
this
seems
like
just
one
another
method,
that's
useful
for
integrating
with
the
rest
obsessed.
You
know
your
systems,
but
that
we
encourage
people
to
find
alternatives,
for
if
it
was
a
really
hot
bath.
E
H
D
D
Mean
there
are
probably
some
pretty
happy
things
you
could
do
that
combine
both
what
you
said
emo
and
what
Christoph
said
I
mean
you
could
imagine,
pinning
a
span
and
then
creating
an
innumerable
over
the
pins
region.
You
know
over
the
pointer
and
the
length
you
just
need
to
be
very
careful
with
managing
your
lifetimes.
H
B
D
The
issues
right
now,
so,
if
you
look
at
like
array
for
example,
array
provides
a
numerator
and
a
numerator,
you
know
get
a
numerator
and
implements
I
numerable
and
whatnot,
but
the
c-sharp
compiler
actually
recognizes
arrays
specially.
And
if
you
look
at
the
il
that's
generated,
it
generates
the
same.
Il
as
if
you
rep
for
int
I
equals
0.
I
is
less
than
write
out
length,
I,
plus
plus
we
could
for
span.
We
could
expose
an
enumerator
that
returns
a
ref,
struct,
enumerator
and
so
on.
E
Well,
I
think,
basically,
at
the
time
of
each
side,
as
we
said,
this
probably
should
be
like
some
sort
of
attribute
before
the
type
that
basically
says
you
know
indexer
in
length.
Is
there
so
please
write
a
pole
under
the
example
about
the
detective
before
somebody
proposed,
but
because,
realistically
the
only
contract
with
the
compiler
cares
about
is
it
has
to
be
able
to
get
the
length
and
have
it
index
all
right.
Well,.
E
H
The
read
only
I
don't
think
it
has
to
say
the
same
semantic
support
because
it
just
means
that
unity.
This
means
it
instead
and
not
change.
But
let's
say
the
thing
points
to
something
which
gives
you
the
length
value.
Every
time
you
access
it,
then
your
type
is
read
only
but
the
length
can
still
change.
E
H
N
P
O
H
E
Japanese
very
easy:
if
you
can
clap
to
it,
that's
where
you
put
the
comma
anyway,
we'd
only
memory
off
char.
That
was
the
thing
I
think
we
had
this
email
yesterday
about
where.
D
Yeah
so
right
now
we're
introducing
these
tights
fantasy
we'd
only
spent
a
memory
of
to
you
read-only
memory
of
tea
and
we're
using
read-only
span
as
a
read-only
char.
Rather,
as
you
know,
a
way
to
slice,
strings
and
and
arrays
and
everything
else,
but
memory
can't
be
used
to
a
read-only
memory
can't
be
used
to
slice
strings
today,
and
it
shouldn't
be
that
hard
or
much
of
a
perf
hit
to
make
that
happen.
We
have
already
had
requests
for
things
like
a
string
segment
and
that's
effectively
effectively
what
a
read-only
memory
of
char
is.
D
So
we
can
just
augment
read-only
memory
of
chars
implementation
to
support
string
and
then
we
can
use
it
for
slicing.
We
can
add
extension
methods
on
read-only
memory
of
char,
for
performing
string
like
operations
and
so
on,
but
the
kind
of
the
bare-bones
pieces
that
we
would
need
are
one
from
an
API
perspective
are
something
that
lets.
You
get
a
read-only
memory
of
char
from
a
string
and
then,
ideally
something
that
lets.
D
I
totally
agree,
I
mean
I,
don't
even
know
if
Kestrel
uses
read-only
memory
charm,
but
the
implementation
can
guard
any
additional
type
checks
behind
got
a
type
test
for
a
type
of
T
equals
type
of
charge.
So
this
should
have
literally
zero
impact
on.
You
know:
read-only
memory
of
bite
and
stuff
like
that
and
then
for
read-only
memory
of
char.
M
D
N
H
No
no,
this
will.
This
has
the
potential
of
slowing
down
read-only
memory
of
part
performance.
Well,
because
memory
has
three
fields,
the
first
field
isn't
is
object
and,
and
we
kind
of
like
switch,
we
we
do.
Its
memory
is
basically
a
union
in
this
guy's.
So
today
we
do
the
switch
on
the
sign
of
the
length.
So
it
also
has
a
length
field,
and
if
it's
negative,
we,
if
it's
positive,
it's
an
array.
The
object
is
in
there.
E
H
Their
own
memory,
nice
so
now
we're
gonna,
add
the
third
type
that
can
be
set
to
this
object
field,
and
we
don't
have
a
bit
to
to
track.
So
we
will
have
to
do
a
type
check,
not
just
change.
It
change
the
sign
of
an
int
which
is
super
efficient,
so
Steve
is
saying
that,
yes,
we
will
have
to
do
a
type
check,
but
potentially
the
type
check
will
not
actually
kicked
in
for
for
the
case
where
it's
memory
of
bytes
yeah.
E
H
So
we
have
I
on
the
inner
thread
with
me:
Steven
Yong.
We
are
discussing
exactly
this,
so
basically
there.
If
we
do
this
right,
what
we
could
say,
read-only
memory
of
Charlie
is
our
a
representation
of
sliced
string.
Can
we
do
the
same
thing
for
utf-8
string
and
today
I
don't
believe
we
can,
and
the
reason
is
that
we
have
this
type
char.
H
M
H
Basically
says
it's
text,
it's
it's
a
buffer
containing
text,
yeah
exactly
it
has
some
other
things,
but
at
least
it
says
it's
text.
Well,
that's
not
the
case
for
read,
read
only
memory
of
bite
read
only
memory
of
theit
can
be
either
utf-8
text
or
it
can
be
some
random
set
of
bytes
and
suddenly,
if
we
had
a
bunch
of
extension
methods
to
operate
on
utf-8
strings,
they
would
show
up
on
and
on
by
trace
and
like
that
would
be
pretty
bad.
In
my
opinion,
I.
H
And
then
it
would
have
the
same
problem.
So
one
of
the
solutions
to
this
is
we
introduced
utf-8
coding,
unit
type
and
it
just
wraps
byte,
and
now
we
could
do
exactly
the
same
thing
except
it
introduces
a
type
that
is
just
a
wrapper
over
bite.
It
probably
introduces
some
performance
hit
when
you
operate
our
overdosed
and
bites
like
our
runtime
average.
It
is
not
as
good
with
handlings
charts
as
it's
with
building
types.
H
E
E
B
E
D
What
kind
of
pattern
do
we
want
here?
Try
an
array
has
the
benefit
that
we
already
have
a
raised
segments
so,
rather
than
having
three
out
arguments,
you
know
we
just
have
the
one
for
the
array
segment.
So
we
want
to
do
something
similar.
We
could
use
a
value
to
ball.
We
could
return
the
string
and
just
have
to
out
arguments
just
sort
of
figuring
out
what
the
pattern
is.
We
want.
D
H
Preferred
the
original
one
because
it
makes
it
super
clear
that
you're
getting
three
written
values
and
you
should
honor
the
offset
in
and
the
count
well
alternative.
Some
I
can
imagine
people
just
like
I'm
gonna,
just
pass
something
for
offset
an
account
and
they'll
just
use
the
string
that
it's
apparent.
E
Maybe
I
mean
the
only
benefit
that
I
see
for
doing
this
either
as
a
return
value
or
as
an
out
is
the
fact
that,
if
you,
if
you
call
this
method
like
three
times
in
your,
you
basically
have
to
create
like
simple
naming
convention
in,
say:
s1
offset
one
count
one
right,
and
then
it
becomes
a
mess
right
versus.
If
you
have
one
thing,
you
just
call
them.
You
know
foo,
and
this.
H
H
D
You
know
we're
talking
about
using
real
memory
char
as
the
string
sort
of
subset
and
so
time
when
you
would
be
accessing
the
string
and
the
offset
account
would
be
you're
almost
certainly
about
to
call
some
other
method
that
takes
them,
and
so
your
calling
is
purely
to
basically
pass
the
data
along.
So
you're,
probably
not
going
to
be
in
a
situation.
You
know
frequently
where
you
want
to
have
lots
of
these
things
pending
on
your
stack
all
at
the
same
time,.
H
And
also
I
think
it
follows
that
try
parent
more
because
it
returns
a
boolean
versus
the
tuple
one.
You
know
like
I
feel
we
should
be
using
more
tuples,
but
it's
not
a
tri
methyl.
You
were
to
check
like
if
there's
nobody
in
there
and
then
it's
not
clear
like
it's
the
string
now.
Is
that
the
pattern?
What
if
the
thing
that
we
returned
in
the
tuple
is
not
the
reference
type
and
like
yes,.
E
H
E
H
E
B
D
D
There's
two
there's:
today
we
have
memory,
try
get
array
and
we
have
read
only
memory,
dangerous,
try
and
get
array,
and
we
talked
about
moving
the
dangerous
ones
to
this
memory.
Marshall
class.
This
isn't
actually
dangerous
and
in
fact,
I
was
proposing
creating
it
as
an
extension
method
so
that
it
would
show
up
on
read-only
memory,
H
star
right
alongside
and
try
and
get
array.
O
A
R
H
The
conclusion
was
that
so
the
dangerous
one
or
the
dangerous
one
is
somewhat
slow.
So
there's
no
controversy,
there's
no
problem.
We
have
dangerous
API
sand,
they
I
in
memory
macho
know
they
put
senior
citizen
dangerous,
get
it
guys.
Oh,
let
me
keep
going
so
the
dangerous
one
is
in
Marshall
we
should
like
now.
The
problem
is
that
we
are
proposing
that
we
will
add
this
one
right,
which
is
not
really
dangerous,
depending
how
you
look
at
it,
but
this
one
is
equivalent
to
try
get
array.
Yes,.
D
H
H
E
H
That's
your
it's!
You
know
in
your
code,
it's
problem
in
your
code.
You
passed
around
in
these
indices.
This
is
I
created
me.
You
know,
like
a
small
section
of
memory
to
you.
I
expect
you
to
only
write
to
this
one,
but
you
wrote
to
something
else
now
what
the
thing,
when
your
method
returns:
I
notice,
that
my
data
is
operating
because
you.
D
Were
right,
it's
not
really
any
different
than
an
existing
method.
Today,
like
a
radar
sort
that
takes
an
array
offset
and
length
if
a
radar
sort,
it
could
certainly
choose
to
ignore
the
offset
and
count
that
you
passed
in,
even
though
you
passed
in
the
correct,
offset
and
count
that
you
wanted.
I'll
call
that,
like
dangerous
sort.
N
C
N
E
H
E
H
B
H
S
Q
G
Q
D
Q
F
C
Remember,
X,
tangents
or
exhaust
exists,
or
we
can
upgrade
it.
Let's.
P
H
C
H
I
H
H
H
H
E
F
H
Yes,
so
at
the
last
review
we
talked
about
this
API.
It
was
rejected
because
it
had
overloads
for
span
of
bite
like
specialization,
overloads
and
also
had
some
constraint
to
strike.
That
is
not
necessary,
so
I
just
removed
the
overloads
and
remove
the
constraint,
or
you
see
you
even
your
comment.
Is
that
looks
good?
Why
do
we
need
this
truck
cost
rate
removed?
Why
do
we
have
the
byte
overload
removed.
H
H
A
E
F
H
E
H
H
Ok,
in
fact,
that
one
probably
can
be
implemented
in
terms
of
glanced
index
of
a
single
value.
It
just
finds
this.
You
know
value,
0,
re,
1
and
then
returns.
The
largest
index
could
be,
maybe
that
you
kind
of
want
to
do
it
in
in
like
in
parallel.
If
the
span
is
very
long
as
value
0
doesn't
exist,
it
would
be
inefficient
yeah.
It's
probably
needs
to
be
implemented,
but
using
vectorized
search.
H
K
M
R
E
H
H
E
H
E
There's
a
discussion
on
equality
on
couples.
Yes,
they
are
proposing
that
they
compile
that
will
effectively
rewrite
them
in
such
a
way
that
it
says
if
the
first
one
equals
the
second
one
at
the
second
edit
first
link,
that's
the
first
one,
second
one
second
one
to
throw
one
third
one
and
so
on
also
generalizes
giant
expression,
essentially
because
it's
the
only
way
they
can
make
sure
they
call
the
right
operators,
canada,
my
equatable
on
top
of
Teeter
mm-hmm.
So
you
said.
B
L
H
E
I
make
a
thing
in
Lincoln,
of
course,
pretty
frequently
because
of
the
way
you
write
the
code,
but
you
would
say
like
something
like
select
this
thing
to
do
a
try
cause.
Then
they
don't
to
say
where
this
thing
is
not
now,
but
I
would
say
that
by
the
time
you
call
to
array
or
like
to
list
I,
don't
think
you
have
like
a
sequence
of
multiples.
Left
I
mean
that
will
be
weird.
E
Even
the
databases
I
mean
I've
done.
These
amount
of
database
programming
in
it
I
really
had
a
ton
of
novels
because
most
data
structures-
you
already
have
that
ability
build
into
them
because
it's
reference
times
anyway,
and
you
try
to
print
them
and
then
you
have
effectively
only
the
atomic
values.
Like
you
know,
I,
don't
know
birth
dates
and
stuff
like
that.
That
is
not
Apple,
but
then
they're,
usually
properties
of
some
larger
objects.
But
you
really
have
like
an
array
of
you
know.
E
To
provide
this
API
and
efficiently
I
mean
the
only
way
for
us
to
different
edibles
would
be
to
action
over
those
inaudible
consent.
Ecology,
comparable
is
horribly
inefficient
because
we
are
going
to
first
this
patch
for
every
single
freaking
comparison
right
so
thing.
If
you
care
about
a
label
being
first
us,
you.
H
B
B
F
C
H
H
E
C
D
C
C
E
H
I
would
say
if
we
discovered
that
this
is
like.
You
know
people
comment
that
it
says
scenario.
Then
we
think
what
the
right
solution
is
mentally
interpret
cast
is
a
bit
like
walkie
I
would
not
say
well.
These
are
the
comments
and
says:
geez
I
want
this
API.
Now
we
will
tell
them
they
work
around,
but
then
we
should
that
the
bomb
that
I
have
this
is
that
it's
basically
it's.
B
E
E
H
H
M
E
So
the
way
before
the
factories
work
today
is
so
the
scenario
goes
like
this.
Imagine
you
are
writing
something
like
yeah
right
or
some
llama
burn.
You
want
to
allow
your
customers
to
effectively
use
any
database
back-end
right,
but
what
you
have
to
do
is
you
have
to
create,
essentially,
connection
objects,
command,
objects,
reader
objects,
and
you
don't
know
which
ones.
You
can't
write
the
new
statement
yourself
now
we
do
have
instruction.
So
we
have
the
DBE
leader,
DB
connection,
the
DB
command.
D
E
Something
needs
to
be
giving
you
a
factory
that
gives
you
one
of
those.
This
is
what
the
DB
provider
is
now
the
problem
is
now
or
how
do
you
get
the
DB
provide
like
the
elected
like
the
factory
itself
and
I
don't
want
it.
You
obviously
provide
effective
in
my
own
code,
because
that
no
means
my
love
ever
has
to
dependent
every
single
possible
anyway.
Let
implementation
that
exists
isn't
so
what
I'd
rather
do
is
I
basically
say.
Well,
you
know
you
could
just
write.
E
You
know
one
entry
method
that
accepts
the
factory,
but
then
the
problem
is
the
customer
has
to
new
it
up
and
for
the
most
part,
what
you
do
is
your
string
based
configuration,
so
nearly
they
give
you
just
a
string
that
says
sequel
or
you
know
SQLite
or
whatever
the
case
might
be,
and
then,
by
the
time
you
actually
have
to
do
something
with
that.
You
know
with
the
database.
You
basically
go
to
this
type,
provide
the
string,
and
then
you
get
back
to
factory.
E
So
it's
effectively
a
global
registration
for
the
basic
map
stream
is
to
hopefully
providers.
The
way
it
works
on
button
and
framework
is
that
we
know
we
come
batteries
included
for
the
things
that
ship
in
the
framework,
ODBC,
sequel,
whatnot
and
you
can
extend
the
ones
that
are
available
by
writing
sections
to
the
app
config
file.
So
we
go
on
core.
We
don't
have
a
configuration
right,
so
there's
no
way
for
you
to
register
those.
That's
where
the
new
API
is
kickings.
H
E
E
K
P
E
I
think
mo
conde,
there's
no
trueborn
the
cost.
You
definitely
have
to
double
the
last
to
it
anyway.
Video
is
stuff,
of
course,.
H
E
H
E
C
H
E
H
E
E
Is
in
you
can
infer
one
from
the
other,
so
somebody
may
purchase
at
the
secret
collider
fact:
300
Christoph!
Yes,
you
know
so
the
try
get
one.
You
want
to
get
the
sequel
one,
but
you
don't
know
like
like
just
just
giving
the
type
name
secretly
provide
a
factory.
The
API
cannot
infer
that
the
key
was
Christopher.
Oh.
I
E
I
E
I
guess
the
way
this
works
in
larger
systems
is
you
can
imagine
that
you
know
you
have
an
application
right
there.
You
have
multiple
different.
You
know.
Parts
of
this
system,
like
you
have
a
caching
layer
and
you
have
the
actual
back-end
is
and
then
you
know
the
backend
in
v1
uses
SQLite
the
backend
in
v2
uses
sequel
and
then
the
caching
layer
slows
it's
stuck
on
SQLite.
So
you
need
to
wait
to
say
well
the
what's
my
back
end
for
the
caching.
H
E
H
H
E
U
E
E
Not
like
other
the
factory
stays
stateful
well,
but
the
thing
is
you
don't
know
whether
it's
the
same
time
right,
you're,
basically
saying
I,
wanted
I
wanted
I
want
to
get
the
provider
factory
for
the
particular
key
caching
and
want
to
do
some
sort
of
optimization
if
it
is
sequel
one.
So
that's
why
you're
asking
whether
it's
the
sequel,
one
essentially
in
the
same
the
same
thing,
if
you
want
to
say,
try
to
return
false
if
it's
not
an
actual
sequel
server,
one.
That's.
H
E
Whatever
the
type
name
is
for
sequel
server,
if
you
provide
a
factory
that
looks
like
we
are
methods
like
so
I
grew
that
it's
weird
I,
don't
quite
know
why
you,
the
whole
point
of
this
API
is
effectively
to
not.
Have
you
deal
with
the
actual
provider,
Factory
right,
yeah
holy
tears
that
you
can
use.
You
know
loose
types
and
strings
exactly
what.
C
H
I
can
imagine
I
can
imagine.
There
are
two
reasons
for
it.
You
know
why
this
could
actually
be
useful.
So
one
is
that
maybe
you
have
a
hierarchy
of
factories
like
it's
deep,
correct:
it's
not
just
one
level.
So
you
know
what
you
pass
to
that.
The
factory
is
like
a
it's
a
base
type
and
then
you
registered
multiple
subtypes
and
you're.
H
Getting
the
basically
the
invariant
name,
selects
one
of
the
subtypes
of
your
base
type
and
the
de
Factory
is
the
base
type
I
mean
it's
a
bit
wacky,
but
that's
why
I
would
imagine
this
idea
would
be
useful.
Another
one
is
for
some
reason
the
factories
are
stateful
and
you
have
multiple
of
those
registered.
F
C
So
there
are
some
motivations
from
from
before
it
seems
that
actually
they
get
registered.
Oh
it's
factory
is
flowing
if
it
doesn't
exist,
so
they
want
to
devote
it
a
no
flow
inversion.
Oh
they
mixed
it
up
as
well
with
the
casting
I.
Think
I,
not
sure.
If
I'm
that
keen
on
the
you
know,
Cal
stinkers
input,
he'll
be
just
try,
guess
factoring
exactly
you
know,
and
the.
L
P
H
J
E
I
think
the
primary
use
case
is
this:
if
you
read
it
from
config,
because
you
have
the
string
already,
this
one
I
think
is
more
than
area.
It's
like
it's
so
like
in
a
snit.
They
have
tons
of
that.
It's
basically
like
configuration
Xcode,
let's
you're
right
code,
to
do
that,
so
you
would
logically
what
you
do
is
you
would
probably
build
some
sort
of,
like
extension
method,
similar
to
what
they
have
for
4-h
they.
E
H
E
B
S
D
H
E
So
I
think
I
I
got
the
scenario.
Let
me
just
say
what
I
what
I
said
it
earlier?
You
can
correct
me
if
I'm
wrong,
so
the
the
primary
scenario
for
this
API
is
essentially
that
you
want
to
have
things
like
EF
other
things
they
basically
need
to
access.
You
know
need
to
construct.
Db
objects
like
connection
that
commands
meters.
They
don't
want
to
have
a
static
dependency
on
the
access
that
knowledge
that
you
use
whatever,
and
so
the
challenge
is.
J
E
J
V
There
working
I
mean
yeah,
we
purposely
didn't
use
this
or
any
variation
of
distance,
I.
Think
from
our
perspective,
you
know
we
don't
like
this
very
much
at
all,
yeah,
it's
like
useful,
but
from
on
back
comp
and
stuff,
that's
already
written
to
use
it
and
want
to
change.
It
makes
sense
from
its
what
I.
B
V
E
E
J
V
H
J
J
So
it
was
a
discussion
really
really
or
because
so
this
is.
This
is
a
mapping.
I
thought
you,
they
are
like
alien
acquires
half
of
the
earth
that
have
a
its
modern
name.
I
mean
they
there's
nothing.
That
important
say
is
if
you
try
to
use
a
specific.
My
own
name
is
as
a
convention
that
would
follow
yeah,
but
there
are
also
racking
providers
so,
for
instance,
for
scenarios
like
interception
and
profiling
of
video
net
say
people
like
France,
boba
and
Orrin,
technically
rocking
providers
or
something
there.
We.
V
V
E
H
V
H
But
my
problem
was
not
that
you
know
syntax
of
specifying
the
yeah
I
know
that
the
inference
works
generic
inference.
My
problem
was
me:
as
a
user
that
is
kind
of
you
know,
I,
don't
understand
the
whole
technology
I'm,
like
I,
already
told
you
what
type
I
want.
Why
do
I
have
to
give
you
the
name
of
the
this
I
told
you
but
call
me
Mary.
No,
no
I
told
you
the
time,
because
I
had
to
pass
an
out
parameter
that
sensitized
everything.
J
E
Like
the
only
thing
is
like,
what's
nice,
about
not
having
the
generic,
it
said
this
this
code
compound
yeah.
Otherwise
you
have
to
this
thing
and
if
90%
of
people
would
do
that
yeah
well,
it
seems
superfluous
right
now,
because
it
means
you
really
want
the
secret
one.
All
nothing
prevents
you
from
saying:
no,
it
is.
Q
C
Factory
right
and
in
general,
our
you
know
our
about
darkness
like
if
we
have
get
mad
at
try
method
like
it's,
not
you
know,
something's.
On
top
of
you
know,
there's
this
basic
additional
value
of
casting
comp
about
that
which
is,
like
you
know.
Suddenly,
it's
kind
of
like
general
pattern
like
get
my
top
try
method
like
a
place
to
lunch,
so.
F
E
O
B
H
E
V
V
Think
if
we
want
to
preserve
the
backward
compatibility,
one
of
the
one
of
the
features
they
have,
what
you
didn't
have
to
have
a
hard
reference
to
the
right,
which
is
kind
of
why
they
were
registered
in
conflict
in
the
first
place
of
why
you
had
an
assembled
name
conflict.
So
if
we
want
to
preserve
that
where
somebody
can
register
it
without
having
it
having
a
common
reference,
that's
why
the
spring
one
is
useful.
So.
V
V
L
L
P
D
E
So
the
only
reason
I
think
maybe
not
having
this
one
may
be
useful-
is
that
up
that
spring
here
is
super
easy
right,
because,
like
this
is
very
specific,
and
if
this
guy
later
don't
Road
has
to
call
basically
get
tied,
then
the
bangle
may
holy.
Look
at
the
stack
is
like.
Oh,
this
is
about
implementation
rather
than
this
is
in
your.
This
is
little
in
your
code,
like
you're,
basically
top
of
state
in
on
top
of
the
stack
play.
It's.
J
J
E
What
is
true,
though
this
is
you
would
so.
Let's
say
you
have
an
app
today,
where
somebody
has
a
configuration
file,
the
bogus
provider,
that
nobody
ever
asks
for
3
an
application
would
never
fractions
that
if
you
normal
this
tool,
startup
has
the
basic
column
type
a
type,
and
then
they
tell
us
well
then,.
E
V
V
V
Anyway
and
then
it
had
code
in
there
that
loaded
all
these
evilly
when
you
did
idea
like
that-
and
this
was
like
massive
pages
for
us
to
get
out
there
breaking
changes-
you
know
somebody
might
be
using
these
references
that
you
know
so
as
I
I
don't
know
a
lazy
part.
Is
this
good
in
my
mind,
but
I?
Don't
care
I
mean.
E
J
V
Oh
se
there's
a
first
one,
you
would
say:
sequel
a
factory
instance
a
new
pasture.
Now
the
instance
thing
is
purely
a
convention
but
mention
that
or
if
they're
going
to
work
correctly.
In
that
framework
they
had
to
follow
that
convention.
Now
it's
possible
to
write
providers
and
use
it
when
the
airport
or
whatever
the
don't,
because
we
don't
care
about
on
a
crab
but
I,
think
it's
reasonable
to
say
that
any
any
provider
factory
will
have
a
donations,
I
believe
otherwise,
the
fashion
additional
factor
equals
the
yeah.
P
H
H
E
J
J
We
heard
from
the
Dyke
thanking
I'm
a
nice
percent
of
the
Hawaiian.
No,
it's
not
that
we
not,
but
if
you
remove
from
the
reality,
there
are
examples
where
that
isn't
so
there
is
the
sequel.
See
yes,
doesn't
follow
the
the
convention,
the
seaport
city
provided
patterning.
Also,
all
the
rapping
boys
as
I
was
before
do
not
follow
the
convention,
but
every
other
provided
every
CEO.
V
H
V
E
V
C
Basically
observed
policy
or
Convention,
as
you
say,
and
suddenly
we
trying
to
bring
it
back
to
the
API,
which
is
kind
of,
and
it's
not
under
person
that
feels
weird
yeah.
You
know
if
it
would
be
like
the
design
from
the
scratch.
Like
yup
we're
going
to
do
this
convention.
You
can
overload
that
something
special
I
could
see
that
if
we
work
with
very
chaotic
property.
J
L
L
V
One
and
the
reason,
one
which
really
makes
sense
in
this
cases
as
a
stay
you
okay,
was
playing
out
as
wrapping
providers,
and
so
it's
very
common,
for
example
like
like,
if
you
take
the
case
in
the
concrete
file
in
note
and
vomit
framework,
a
very
common
thing
to
do
would
be
to
put
in
your
config
file
something
that
registers
a
profile
as
rapid
provider,
and
then
you
run
the
application
and
it
runs
with
the
profiler.
So
the
idea
here
was
what
wins
is
basically
the
same.
E
D
V
H
V
J
V
E
To
me
is
your
name
should
I,
don't
know,
think
it's
just
my
EDD
anguses,
like
I,
like
symmetry
I,
always
find
it
very
weird
when
this
asymmetry,
but
yet
the
only
scenario
could
imagine
is
diagnostics.
You
really
want
to
make
sure
that
no
cord
users
are
giving
avada.
You
can
see
whatever
close
up
and
fix
that
part
I
mean.
J
E
J
E
J
C
J
L
E
J
E
M
E
E
J
Use
us,
the
other
is
name
XML.
Complicado
is
required,
it's
not
used
for
anything,
so
that
is
good.
So
there
is
a
final
name,
but
that
is
in
the
configuration
right.
That's
data
and
name
cycle
the
name,
so
it's
required
a
from
the
perspective
of
this
area.
I
can
think
of
is
somebody's
like
how
a
dashboard
you
are
showing
right
now.