Page 7 of 15

Re: Thread for Non-CA Academic Questions

Posted: March 29th, 2019, 5:56 am
by Sarp
That allows powers, concatenation, and division which makes that question different

Re: Thread for Non-CA Academic Questions

Posted: April 25th, 2019, 11:27 am
by GUYTU6J
Long time no see! I don't know if it is appropriate to revisit with an unrelated question...
How does this meaningless mapping evolve?
IMG_20190425_232418.jpg
IMG_20190425_232418.jpg (202.45 KiB) Viewed 9228 times

Re: Thread for Non-CA Academic Questions

Posted: April 25th, 2019, 3:02 pm
by fluffykitty
GUYTU6J wrote:x_n+1=-1/(k+1)*(k/(1/x_n+x_n)+x_n+1/x_n-k)
EDIT: Added missing minus sign

Re: Thread for Non-CA Academic Questions

Posted: April 26th, 2019, 12:02 am
by toroidalet
I believe that for k=0 (xn+1=xn(+1/xn)) it diverges. There's an inductive proof which goes something like this:
Provided the sequence reaches n, it will reach n+1, since each time it increases by at least 1/(n+1), so after n+1 applications of this the new number will be ≥n+1.
(Obviously if x0 is negative it will decrease infinitely.)

I'm not sure how to approach k≥1; perhaps the behaviour depends on the seed values.

Re: Thread for Non-CA Academic Questions

Posted: April 26th, 2019, 12:08 am
by GUYTU6J
For different natural numbers <10, the oscillating periods vary, and k=4 seems strange. But k can be any real number.

Re: Thread for Non-CA Academic Questions

Posted: April 26th, 2019, 12:26 am
by GUYTU6J
fluffykitty wrote:
GUYTU6J wrote:x_n+1=1/(k+1)*(k/(1/x_n+x_n)+x_n+1/x_n-k)
Thanks for converting to text! I didn't know how to type underscript. But there should be a minus sign.

Re: Thread for Non-CA Academic Questions

Posted: May 6th, 2019, 1:15 am
by Hunting
I have a question.

Have anyone think of the idea of "link-array"? I'm sure it is old and known because of its simplicity, but classifies as "garbage" because of its uselessness.

It's a data structure. It begins with one array. When that array have only one empty space remaining, and you try to add more elements, it creates another array, let the first array links to the second array using the remaining space, and then store data in that array.

It is what I think a trivial combination between link-list and array. It has the advantage of being infinite(theoritically) and quicker to find an element in a given position(I think).

The speed depends on how do you decide the second array's capacity. If it is always a constant, the complexity of find-element-in-a-given-position is still O(N), so there must be clever options like setting the capacity into 2^(the previous capacity).

So... Have this been think of, or is this useful in any way?

Re: Thread for Non-CA Academic Questions

Posted: May 6th, 2019, 10:28 am
by wildmyron
This is apparently called an unrolled linked list. Lots of good info here: https://stackoverflow.com/questions/295 ... inked-list

Re: Thread for Non-CA Academic Questions

Posted: May 13th, 2019, 2:28 pm
by Moosey
Moosey wrote:Is this differential calculus correct?
d/dx (x^(x^(sin (pi((x^2)-2)/x^2)))dx =
Think this is hard? Try integrating this!
Think this is hard? Try integrating this!
1011C1D0-BB8B-4164-8F34-EFAF9790C7D9.jpeg (249.22 KiB) Viewed 8844 times
I may have written the function I was deriving incorrectly


Also, I hope I’m right that
d/dx (f(x))^g(x) dx = ((f(x))^g(x))g’(x)ln(f(x))+(f(x)^(g(x)-1))g(x)f’(x)


Or I’m definitely wrong. Unless I wrote it wrong here.
Got my problem from a random posts post of mine

Re: Thread for Non-CA Academic Questions

Posted: May 19th, 2019, 9:11 am
by Hunting
While learning Number Theory, I noticed some numbers that contains only 0 and 1(in decimal, not binary!) factorization contains only 1, 3 and 7.

Of course the number shall only start with 1(obvious) and shall only end with 1(If end with 0 then it's even and its factorization contains 2 and fail)

I manually checked 11-111111(I'm on my dad's computer and have no access to Python) and only these numbers will do:

Code: Select all

11 = 11
111 = 3 * 37
1011 = 3 * 337
10001 = 73 * 137
10011 = 3 * 3337
10101 = 3 * 7 * 13 * 37
11011 = 7 * 11 * 11 * 13
110011 = 11 * 73 * 137
111111 = 3 * 7 * 11 * 13 * 37
I don't know how AlephAlpha get this list but he wrote:
AlephAlpha wrote:1, 11, 111, 1001, 1011, 10001, 10011, 10101, 11011, 110011, 111111, 1000011, 1110111, 10011001, 10111011, 10111101, 1001011011, 10001110011, 10101111111
See also:

Code: Select all

111 = 3 * 37 - LWSS
1011 = 3 * 337 - MWSS
10011 = 3 * 3337 - HWSS
But 33337 isn't a prime so 100011 won't work - OWSS

LOLOL

EDIT: Note

Code: Select all

1, 11, 111, 1001, 10001, 10101, 11011, 110011, 111111, 1110111, 10011001
Are all symmetric

Are there any numbers made of only 1 other than 1, 11, 111, 111111?

Re: Thread for Non-CA Academic Questions

Posted: May 24th, 2019, 10:46 am
by Moosey
So, today I was writing about fast growing functions (like yesterday) and I came up with this function:
f(x,y,z)=

Code: Select all

1, if z=0, y=0
z!f(z,x,z-1), if y=0 but not z=0
x!f(x!,y-1,z), if y is not 0
I found that f(3,1,1)=6
Then I found that f(3,1,4) =
[a 27-digit number]f([a 23-digit number],4,3)

I had designed f(x,y,z) in a way that specifically allows for it to eventually evaluate to some number.
Does anyone have a clue as to what value f(3,1,4) is? Obviously, it’s very large as it will eventually be [many digits]f(3,[also many, but fewer, digits], 2) and will take practically forever to become [a supremely large number],f(2,[a very very large number, which I will call ς for now],1) and then [supremely large number again](2^ς)f(1,2,0) and then [supremely large number again](2^ς), since f(2,y,z)= (2^y)f(z,2,z-1) and f(1,y,0) = 1.
How does f(3,1,4) compare to other large numbers? I have no intuition on the size of any.
Also, how does ς compare to large numbers? It’s obviously TINY compared to f(3,1,4) but how large is it in googological/practical scales


EDIT:
Also, could anybody tell me which argument would result in the greatest (and same with least) increase if you added 1 to it? I’m guessing z, but would x or y be the least?

What I like about my function as that f(a,b,c) < f(d,e,k) if a ≤ d AND b ≤ e AND c ≤ k AND (a+b+c)/3 < (d+e+k)/3, that is, if you increase even one of the arguements, the output will also increase.


EDIT May 30, 2019:

I just realized that it’s easy to make a function g(x,y,z) based on f(x,y,z)

Code: Select all

g(x,y,z) =
f(x,x,x)*g(f(x,x,x),y-1,z), for y not = 0
f(x,x,x)*g(z,x,z-1), for y = 0 but z not equal to 0
f(x,x,x), for y=0 and z=0
 
It’s defined similarly but is not based on factorials, but rather, fs.
Just as a demonstration that g(x,y,z) becomes huge—
g(3,1,4) = f(3,3,3)f(f(3,3,3),f(3,3,3),f(3,3,3))g(4,f(3,3,3),3)
and f(3,3,3)=4320*f(720,1,3)
Which is still rather large, but probably not as big as f(3,1,4).
What’s frightening about g(3,1,4) is that it’s nowhere near done iterating by the time it iterates to
f(3,3,3)f(f(3,3,3),f(3,3,3),f(3,3,3))g(4,f(3,3,3),3)
Which means that the f(f(3,3,3),f(3,3,3),f(3,3,3)), despite being beyond enormous (how can I say that? The z is very large compared to the z in f(3,1,4), which is only 4), is a tiny fraction of (I.e. nothing compared to) g(3,1,4)
I believe g(x,y,1)=
f(f(f(f(...)))) with y layers * f(f(f(f(...)))) with y-1 layers .... * f(x,x,x) with 1 layer. Am I right?

I was wondering how big g(3,1,4) is compared to other large numbers. Is it larger than graham’s number? If not, if I defined ltr_n(x,y,z) as

Code: Select all

ltr_n-1(x,x,x)ltr_n(ltr_n-1(x,x,x),y-1,z) for y > 0, n > 0
ltr_n-1(x,x,x)ltr_n(z,x,z-1) for y = 0, z > 0,  n > 0
ltr_n-1(x,x,x) for y = 0, z = 0, n > 0
f(x,y,z) for n = 0
How big would n have to be for ltr_n(3,1,4) to exceed graham’s number? How big for TREE(3)?

Suddenly I have an idea for measuring the size of exceedingly large numbers. The “Moosey letter function magnitude” of a number c is the minimum value n for which ltr_n(3,1,4) (defined above) exceeds c.
Obviously, for c = ltr_k(3,1,4), the Moosey letter function magnitude of c is k+1.





EDIT:
Here’s a new function, the stacked Moosey letter function:
Mltrs(n) =
ltr_Mltrs(n-1) of (3,1,4)

Mltrs(0)=1

That is:
Mltrs(n) is ltr_ltr_ltr...(3,1,4)(3,1,4)
Where you have n copies of ltr and the bottom one is ltr_0(3,1,4), or f(3,1,4)

The function grows very quickly— the Moosey letter function magnitude of Mltrs(n) is Mltrs(n-1)+1, which can make awfully huge numbers considering how slowly the Mltrfm grows.
How awfully huge is Mltrs(2)?


Sorry if this sounds like microblogging or something, but I just wondered how large f(3,1,4), g(3,1,4), and Mltrs(2) were.

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 12:16 pm
by Moosey
Just gonna bump the thread so people see my previous post & edits
In particular, how do f(3,1,4), g(3,1,4) and Mltrs(2)
stack up against Graham’s number, TREE(3), and other large numbers?
What are the Moosey letter function magnitudes (or approximations of the Mltrfm’s will do) of the said numbers?

I’m guessing Mltrs(2) is at least as large as graham’s number.


EDIT:
Now I defined the “sigmoose function” (σM(n)) to combat the possibility that Mltrs(2) < g_64.

σM(n)=

Code: Select all

Mltrs(σM(n-1)), n>0
1, n=0
σM(0) = 1 (duh)
σM(1) = f(3,1,4)
σM(2) = Mltrs(f(3,1,4)), which I’m certain is larger than Graham’s number.
It’s

ltr_ltr_ltr...(3,1,4)(3,1,4)
Where there is f(3,1,4) layers of ltr s.

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 2:11 pm
by fluffykitty
You may be interested in the Googology Discord server. Invite link is https://discord.gg/V6R4hRJ. Also, f(x,x,x) seems to only have an FGH level of about 4 (aka pentation level), g(x,x,x) has an FGH level of about 6 (heptation level), ltr_n(x,x,x) has an FGH level of about n+2 (aka n+1 up arrows), so Mltrs(n) has an FGH level of w+1, which is enough to beat Graham's Number around Mltrs(64). However, TREE(3) is far larger than anything you can reasonably create from this type of construction, since it has an FGH level of phi(1,0,0), which is much larger than w+1.

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 2:43 pm
by AforAmpere
I was under the impression that TREE(3) was somewhere around the SVO in size, which dwarfs even what fluffykitty said above. Either way, defining a system that reaches TREE(3) with computable functions isn’t trivial.

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 3:27 pm
by Moosey
fluffykitty wrote:You may be interested in the Googology Discord server. Invite link is https://discord.gg/V6R4hRJ. Also, f(x,x,x) seems to only have an FGH level of about 4 (aka pentation level), g(x,x,x) has an FGH level of about 6 (heptation level), ltr_n(x,x,x) has an FGH level of about n+2 (aka n+1 up arrows), so Mltrs(n) has an FGH level of w+1, which is enough to beat Graham's Number around Mltrs(64). However, TREE(3) is far larger than anything you can reasonably create from this type of construction, since it has an FGH level of phi(1,0,0), which is much larger than w+1.
AforAmpere wrote:I was under the impression that TREE(3) was somewhere around the SVO in size, which dwarfs even what fluffykitty said above. Either way, defining a system that reaches TREE(3) with computable functions isn’t trivial.
Good to know.
So sigmoose(2) > G_64 ?

I’m glad I know this— it gives me a general idea of how big Graham’s number is.




Just how unreasonably large is sigmoose(2)?
I guess g_64 < sigmoose(2) < TREE(3), though all those differences are by huge huge orders of magnitude.

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 6:27 pm
by Moosey
I wrote a python script to evaluate a function I made,
d(x,y,z,w).
WHAT HAPPENED?

Code: Select all

>>> d(3,2,1,1)
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    d(3,2,1,1)
  File "<pyshell#3>", line 9, in d
    return fact(x) * d(d(x,y-1,z,w),y-1,z,w)
  File "<pyshell#3>", line 9, in d
    return fact(x) * d(d(x,y-1,z,w),y-1,z,w)
  File "<pyshell#3>", line 7, in d
    return fact(x) * d(fact(x), fact(x), z-1, w)
  File "<pyshell#3>", line 9, in d
    return fact(x) * d(d(x,y-1,z,w),y-1,z,w)
  File "<pyshell#3>", line 9, in d
    return fact(x) * d(d(x,y-1,z,w),y-1,z,w)
  File "<pyshell#3>", line 9, in d
    return fact(x) * d(d(x,y-1,z,w),y-1,z,w)
  [Previous line repeated 3 more times]
  File "<pyshell#3>", line 5, in d
    return fact(x) * d(fact(x), fact(x), fact(x), w-1)
  File "<pyshell#3>", line 9, in d
    return fact(x) * d(d(x,y-1,z,w),y-1,z,w)
  File "<pyshell#3>", line 9, in d
    return fact(x) * d(d(x,y-1,z,w),y-1,z,w)
  File "<pyshell#3>", line 9, in d
    return fact(x) * d(d(x,y-1,z,w),y-1,z,w)
  [Previous line repeated 260 more times]
  File "/Users/Moosey/Documents/python codes/TEST run to test.py", line 8, in fact
    return x * fact(x-1)
  File "/Users/Moosey/Documents/python codes/TEST run to test.py", line 8, in fact
    return x * fact(x-1)
  File "/Users/Moosey/Documents/python codes/TEST run to test.py", line 8, in fact
    return x * fact(x-1)
  [Previous line repeated 717 more times]
  File "/Users/Moosey/Documents/python codes/TEST run to test.py", line 5, in fact
    if x == 0:
RecursionError: maximum recursion depth exceeded in comparison
>>> 

Code: Select all

def fact(x):
    if x == 0:
        return 1
    else:
        return x * fact(x-1)
#spacing
def d(x,y,z,w) :
    if w == 0 and z == 0 and y == 0:
        return 1
    elif z == 0 and y == 0:
        return fact(x) * d(fact(x), fact(x), fact(x), w-1)
    elif y == 0:
        return fact(x) * d(fact(x), fact(x), z-1, w)
    else:
        return fact(x) * d(d(x,y-1,z,w),y-1,z,w)

is my function not evaluating to a value?

Is there some other code I should use?

for clarity, my function d(x,y,z,w)=

Code: Select all

x!d(d(x,y-1,z,w),y-1,z,w), y > 0
x!d(x!, x!, z-1, w), y=0, z>0
x!d(x!,x!,x!,w-1), y = 0, z = 0, w>0
1, y = z = w = 0

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 6:29 pm
by fluffykitty
Stack overflow. Also, if you're trying to compute 700! the overall result probably can't be computed very quickly.

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 6:36 pm
by Moosey
fluffykitty wrote:Stack overflow. Also, if you're trying to compute 700! the overall result probably can't be computed very quickly.
can my function be tweaked to fix that? Or can someone find d(3,2,1,1)?

also, re: 700! , my code almost instantaneously spit out

Code: Select all

>>>fact(700)
2422040124750272179867875093812352218590983385729207299450679664929938160215647420444519051666484819249321456671497049842327525093874817343838393757631459228450828499972271274140160311057830558463636337124079332447820739281101037112665387537180790257577919273108262916904750405235055060084012219492892375635136296622020023178109619818046179906897450420548912610870589088056503913584562211037693288782960900195074130999799035970711436279339094292032866260496375825461427727555710003007752906141470639574390024988514914264449865006458873226951941899545970333910351588559232940829569276986080222200289966128343931630028789203382654749603473516314765262772257171154686716862814184728741187147936349501653197457455660413134506049122044947052623384682088864790673309569292384215611788014274954905914148362303226200246816441301934846080254998647325270606104512088058712293349862185399243309054299576381718806247238195232604642614329894070636163753672091232751612378348273840757873567717532879242518337119540602943609411629349009566043720836737401090882392975031224612531245642687296717053747734506443314924558119560479901478736209556925161517737110399754730551854066328420014728657896286936523787080206476327157136441318773432751007263108056958251693811280957243202460157111778617472683761623869704457588005158037495665069625778930898095725794710701639238231528115579619120287378689238934335198508665933917257143975277707590597511989345068701735940169672561864713107115016747368992690116082633762172346688969840862517264384000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
which actually frightened me.




Can it be made iterative?
If so, can somebody post the said script?

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 8:56 pm
by Moosey
AforAmpere wrote:Either way, defining a system that reaches TREE(3) with computable functions isn’t trivial.
I feel like I want to challenge myself, and take a crack at it.
Suppose I define MATRIXPARTY(n)
as follows:

MATRIXPARTY(n) = the largest possible amount of matrices I can write such that no matrix contains a previous uninterrupted matrix, where there are n possible symbols I can put in each space of the matrix, and the largest possible dimensions of a matrix are k by k for the nth matrix. (Please note that I specified dimensions and not area-- a 4-by-1 matrix as the 2nd one is not allowed)

What I mean by "uninterrupted matrix" a matrix contains a previous uninterrupted matrix if one can "pull out a slab of it"
and find the previous matrix in question.

i.e.

Code: Select all

| 1 1 3 |
| 1 1 2 |
| 2 2 2 |
contains

Code: Select all

| 1 2 |
| 2 2 |
which is the bottom right "slab"
but not

Code: Select all

| 1 3 |
| 2 2 |
since that is the corners and it's interrupted by numbers in-between.
Rotations/reflections don't count--

Code: Select all

| 2 2 2 |
is not

Code: Select all

| 2 |
| 2 |
| 2 |
!

MATRIXPARTY(1) = 1
and it appears that
MATRIXPARTY(2) = 8

Code: Select all

| 1 |

Code: Select all

| 2 2 |
| 2 2 |

Code: Select all

| 2 |
| 2 |
| 2 |

Code: Select all

| 2 2 2 2 |

Code: Select all

| 2 2 2 |

Code: Select all

| 2 2 |

Code: Select all

| 2 |
| 2 |

Code: Select all

| 2 |

does MATRIXPARTY grow too slowly to exceed TREE(n) for large n, does it exceed TREE(n) for large n but not at 3, did I successfully construct a function which grows faster than TREE(n) and exceeds it at n = 3, or does it blow up to infinity? (I don't want it to, of course, but... )


I obviously took inspiration from the very function I was trying to exceed.

Re: Thread for Non-CA Academic Questions

Posted: May 30th, 2019, 10:31 pm
by AforAmpere
I think the value for 3 is infinite:

Code: Select all

|1|

Code: Select all

|2 3|
|3 2|

Code: Select all

|2 3 3|
|3 3 2|

Code: Select all

|2 3 3 3|
|3 3 3 2|
.
.
.
Or maybe I'm not understanding the rules. No matrix contains the previous one.

Re: Thread for Non-CA Academic Questions

Posted: May 31st, 2019, 7:25 am
by Moosey
AforAmpere wrote:I think the value for 3 is infinite:

Code: Select all

|1|

Code: Select all

|2 3|
|3 2|

Code: Select all

|2 3 3|
|3 3 2|

Code: Select all

|2 3 3 3|
|3 3 3 2|
.
.
.
Or maybe I'm not understanding the rules. No matrix contains the previous one.
Rats! Suppose I revise the rules (Option 1) so that no matrix (contains a previous uninterrupted one OR contains a previous one in the corners).


That way,

Code: Select all

|2 3|
|3 2|
Makes the next two illegal.

Furthermore, (Option 2) if that doesn’t work, no matrix can contain a previous one in the corners in a different sense—
This time

Code: Select all

| 1 2 3 |
| 4 5 6 |
Is contained in

Code: Select all

| 1 7 2 3 |
| 5 7 7 7 |
| 4 7 5 6 |

That is, no matrix can contain a previous uninterrupted one OR consist of parts

Code: Select all

 | a b c |
| d e f |
| g h i |
When a previous matrix consisting of parts

Code: Select all

| a c |
| g i |
Has been played

These rules not only apply for parts which are 1*1 — if part a is

Code: Select all

 1 2 3 
It’s still fine— I.e. the parts can be n*m for any n and m (as long as the whole satisfies the no larger than k*k for turn k, that is!)

So basically, a matrix with parts

Code: Select all

 | a b c |
| d e f |
| g h i |
cannot be played if a previous matrix

Code: Select all

| a c |
| g i |

OR

| a c |
| d f |

OR
| a b |
| g i |

Etc. 
Has been played

Re: Thread for Non-CA Academic Questions

Posted: June 5th, 2019, 3:54 am
by testitemqlstudop
I'll take a silly crack at this, too:

Let a "cube" be a 3d cube of numbers that can be rotated, cut/separated (parallel to the XY-face, XZ-face, and YZ-face) and traslated.

Define a function CUBEPARTY(n) that counts the maximum length of a sequence of cubes that satisfies the following conditions:

0. Each number in the cube is between 1 and n inclusive.
1. The i-th cube is at most i by i by i in dimensions.
2. The i-th cube cannot be rotated, cut, or translated in such a sequence to attain a previous cube.

But is it finite?

Re: Thread for Non-CA Academic Questions

Posted: June 5th, 2019, 7:51 am
by Moosey
testitemqlstudop wrote:I'll take a silly crack at this, too:

Let a "cube" be a 3d cube of numbers that can be rotated, cut/separated (parallel to the XY-face, XZ-face, and YZ-face) and traslated.

Define a function CUBEPARTY(n) that counts the maximum length of a sequence of cubes that satisfies the following conditions:

0. Each number in the cube is between 1 and n inclusive.
1. The i-th cube is at most i by i by i in dimensions.
2. The i-th cube cannot be rotated, cut, or translated in such a sequence to attain a previous cube.

But is it finite?
I feel it isn’t— it’s a 3D analog to the old MATRIXPARTY(n), and so you can just do the Aformpere thing. Probably.

Re: Thread for Non-CA Academic Questions

Posted: June 5th, 2019, 5:48 pm
by fluffykitty
All versions of MATRIXPARTY(3) and CUBEPARTY(3) are infinite. The sequence is

Code: Select all

|2|
|1 1|
|1 1|
followed by extensions of

Code: Select all

|1 1 0 0 0|
|1 0 1 0 0|
|0 1 0 1 0|
|0 0 1 0 1|
|0 0 0 1 1|
(Element (x,y) is 1 iff x=y=0, x=y=max, or abs(x-y)=1)

Re: Thread for Non-CA Academic Questions

Posted: June 5th, 2019, 6:21 pm
by Moosey
fluffykitty wrote:All versions of MATRIXPARTY(3) and CUBEPARTY(3) are infinite. The sequence is

Code: Select all

|2|
|1 1|
|1 1|
followed by extensions of

Code: Select all

|1 1 0 0 0|
|1 0 1 0 0|
|0 1 0 1 0|
|0 0 1 0 1|
|0 0 0 1 1|
(Element (x,y) is 1 iff x=y=0, x=y=max, or abs(x-y)=1)
What if I say that, furthermore, if

Code: Select all

| a b |
| c d |
And

Code: Select all

 | e | 
Have been played, then

Code: Select all

 | e b |
 | c d |

And 

| a e |
| c d | 
etc.
Are illegal?

For that matter, can you think of any way to make MATRIXPARTY(3) finite?