Minimalist Machine Derivations

Files: grammar.pl / m12.pl / Back to homepage

Examples:

  • T-to-C Movement: Causes and Consequences. Pesetsky & Torrego (2001). collapse
    Example Instruction stream (clickable) Notes
    (5a) What did Mary buy?
    (5b) *What Mary bought?
    [what:n, q, buy, 'v*', [mary, d], 'Tpast', c_Q] (5a) T to matrix C => do-support.
    (5b) Mary to edge C blocked (FI: exclamatory).
    (5c) *Who did buy the book?
    (5d) Who bought the book?
    [book, the, buy, 'v*', [who, q], 'Tpast', c_Q] No do-support triggered.
    (5c) ruled out by economy.
    (23) What will Mary buy? [what:n, q, buy, 'v*', [mary, d], will, 'T', c_Q] Auxilary will raises to edge of C.
    (24) What did John say that Mary will buy? [what:n, q, buy, 'v*', [mary, d], will, 'T', c_eQ, say, v_unerg, [john, d], 'Tpast', c_Q] Two derivations: (24) T to C realized as that.
    Or that can be omitted. c_eQ hosts wh-movement only.
    (28a) Who did John say will buy the book?
    (28b) *Who did John say that will buy the book?
    [book, the, buy, 'v*', [who, q], will, 'T', c_eQ, say, v_unerg, [john, d], 'Tpast', c_Q] That-trace effect.
    (28b) ruled out by economy.
    (31) Mary thinks that Sue will buy the book
    (33) Mary thinks Sue will buy the book
    [book, the, buy, 'v*', [sue, d], will, 'T', c_e, think, v_unerg, [mary, d], 'T', c] Two derivations: (31) T to embedded C (c_e) realized as that. (33) c_e attracts subject Sue
    (43a) *What a silly book did Mary buy!
    (43b) What a silly book Mary bought!
    [book, silly, a, what:d, q, buy, 'v*', [mary, d], 'Tpast', c_Q] (43a) T to C blocked by CI: exclamative.
    (43b) Mary in edge of C.
    (47a) Bill asked what Mary bought
    (47b) *Bill asked what did Mary buy
    (47c) *Bill asked what that Mary bought
    [what:n, q, buy, 'v*', [mary, d], 'Tpast', c_Qe, ask, v_unerg, [bill, d], 'Tpast', c] Interrogative embedded C does not support T displacement.
    Note: same parse derived twice.
    Extra test cases
    Who was John meeting? [who, q, meet, 'v*', [john, d], prog, 'v~', 'Tpast', c_Q] Object wh-movement. Auxiliary be pied-piping.
    Who was meeting John? [john, d, meet, 'v*', [who, q], prog, 'v~', 'Tpast', c_Q] Subject wh-movement. Auxiliary be pied-piping.
    *Who do you think that saw John?
    Who do you think saw John?
    [john, d, see, 'v*', [who, q], 'Tpast', c_eQ, think, 'v_unerg', [you, d], 'T', c_Q] That-trace effect.
    Economy: no T to C.
    Who do you think that John saw?
    Who do you think John saw?
    [who, q, see, 'v*', [john, d], 'Tpast', c_eQ, think, 'v_unerg', [you, d], 'T', c_Q] Two derivations.
    No that-trace effect with object.
  • Machine Parameters: expand

    Animation:
    (47a) Bill asked what Mary bought
    (47b) *Bill asked what did Mary buy
    (47c) *Bill asked what that Mary bought

    Derivation:
    (47a) Bill asked what Mary bought
    (47b) *Bill asked what did Mary buy
    (47c) *Bill asked what that Mary bought

    Stream:[[what!D],[q!case!N!scope],[buy],[v*!phi],[[mary!D],[d!case!N]],[Tpast!phi],[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):
    SO:[]

    Step 1.

    Head of stream [what!D] is the initial SO
    Stream:[[q!case!N!scope],[buy],[v*!phi],[[mary!D],[d!case!N]],[Tpast!phi],[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):
    SO:[what!D]

    Step 2.

    Merge [q!case!N!scope] and [what!D]
    Label from [q!case!N!scope] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [what!D]
    [q!case!N!scope] values D on [what!D]
    [what] values N on [q!case!N!scope]
    Stream:[[buy],[v*!phi],[[mary!D],[d!case!N]],[Tpast!phi],[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):
    SO:[q!case!scope[q!scope][what]]

    Step 3.

    Merge [buy] and [q!case!scope[q!scope][what]]
    Label from [buy] (head merging with a non-head)
    Theta-mark [q!case!scope[q!scope][what]]
    Push [q!case!scope[q!scope][what]] (unvalued uF) onto stack
    Stream:[[v*!phi],[[mary!D],[d!case!N]],[Tpast!phi],[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[q!case!scope[q!scope][what]]
    SO:[buy[buy][q!case!scope[q!scope][what]]]

    Step 4.

    Merge [v*!phi] and [buy[buy][q!case!scope[q..][what..]]]
    Label from [v*!phi] (head merging with a non-head)
    [q!case!scope[q!scope][what]] values uPhi on [v*!phi]
    [v*] values acc case on [q!case!scope[q!scope][what]]
    Stream:[[[mary!D],[d!case!N]],[Tpast!phi],[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[q!scope[q!scope][what]]
    SO:[v*[v*][buy[buy][q!scope[q!scope][what]]]]

    Step 5.

    Begin substream
    Stream:[[mary!D],[d!case!N]]
    Stack (⥥):
    SO:[]

    Step 6.

    Head of stream [mary!D] is the initial SO
    Stream:[[d!case!N]]
    Stack (⥥):
    SO:[mary!D]

    Step 7.

    Merge [d!case!N] and [mary!D]
    Label from [d!case!N] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [mary!D]
    [d!case!N] values D on [mary!D]
    [mary] values N on [d!case!N]
    Stream:[]
    Stack (⥥):
    SO:[d!case[d][mary]]
    End substream, SO [d!case[d][mary]] re-inserted into main stream

    Step 8.

    Stream:[[d!case[d][mary]],[Tpast!phi],[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[q!scope[q!scope][what]]
    SO:[v*[v*][buy[buy][q!scope[q!scope][what]]]]

    Step 9.

    Merge [v*[v*][buy[buy..][q..]]] and [d!case[d][mary]]
    Label from [v*[v*][buy[buy..][q..]]] (edge feature)
    Theta-mark [d!case[d][mary]]
    Push [d!case[d][mary]] (unvalued uF) onto stack
    Stream:[[Tpast!phi],[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[d!case[d][mary]]
    [q!scope[q!scope][what]]
    SO:[v*[d!case[d][mary]][v*[v*][buy[buy][q!scope[q!scope][what]]]]]

    Step 10.

    Merge [Tpast!phi] and [v*[d!case[d..][mary..]][v*[v*..][buy..]]]
    Label from [Tpast!phi] (head merging with a non-head)
    [d!case[d][mary]] values uPhi on [Tpast!phi]
    [Tpast] values nom case on [d!case[d][mary]]
    Stream:[[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[d[d][mary]]
    [q!scope[q!scope][what]]
    SO:[Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q!scope[q!scope][what]]]]]]

    Step 11.

    Internal merge selected
    Merge [Tpast[Tpast][v*[d..][v*..]]] and [d[d][mary]]
    Label from [Tpast[Tpast][v*[d..][v*..]]] (edge feature)
    Stream:[[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[d[d][mary]]
    [q!scope[q!scope][what]]
    SO:[Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q!scope[q!scope][what]]]]]]]

    Step 12.

    Merge [cQe!wh!T] and [Tpast[d[d..][mary..]][Tpast[Tpast..][v*..]]]
    Label from [cQe!wh!T] (head merging with a non-head)
    Relativized TOS search for iF(wh) skipping [d[d][mary]]
    [q!scope[q!scope][what]] values wh on [cQe!wh!T]
    [d[d][mary]] values T on [cQe!T]
    Internal merge selected
    [cQe] values uscope on [q!scope[q!scope][what]]
    Merge [cQe[cQe][Tpast[d..][Tpast..]]] and [q[q][what]]
    Label from [cQe[cQe][Tpast[d..][Tpast..]]] (edge feature)
    Stream:[[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[d[d][mary]]
    [q[q][what]]
    SO:[cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]

    Step 13.

    Local Extent boundary at [cQe[q[q..][what..]][cQe[cQe..][Tpast..]]]
    New boundary (b) marker stacked
    Stream:[[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):b
    [d[d][mary]]
    [q[q][what]]
    SO:[cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]

    Step 14.

    Merge [ask] and [cQe[q[q..][what..]][cQe[cQe..][Tpast..]]]
    Label from [ask] (head merging with a non-head)
    Theta-mark [cQe[q[q..][what..]][cQe[cQe..][Tpast..]]]
    Stream:[[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):b
    [d[d][mary]]
    [q[q][what]]
    SO:[ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]

    Step 15.

    Merge [vunerg] and [ask[ask][cQe[q..][cQe..]]]
    Label from [vunerg] (head merging with a non-head)
    Stream:[[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):b
    [d[d][mary]]
    [q[q][what]]
    SO:[vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]

    Step 16.

    Begin substream
    Stream:[[bill!D],[d!case!N]]
    Stack (⥥):
    SO:[]

    Step 17.

    Head of stream [bill!D] is the initial SO
    Stream:[[d!case!N]]
    Stack (⥥):
    SO:[bill!D]

    Step 18.

    Merge [d!case!N] and [bill!D]
    Label from [d!case!N] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [bill!D]
    [d!case!N] values D on [bill!D]
    [bill] values N on [d!case!N]
    Stream:[]
    Stack (⥥):
    SO:[d!case[d][bill]]
    End substream, SO [d!case[d][bill]] re-inserted into main stream

    Step 19.

    Stream:[[d!case[d][bill]],[Tpast!phi],[c]]
    Stack (⥥):b
    [d[d][mary]]
    [q[q][what]]
    SO:[vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]

    Step 20.

    Merge [vunerg[vunerg][ask[ask..][cQe..]]] and [d!case[d][bill]]
    Label from [vunerg[vunerg][ask[ask..][cQe..]]] (edge feature)
    Theta-mark [d!case[d][bill]]
    Push [d!case[d][bill]] (unvalued uF) onto stack
    Stream:[[Tpast!phi],[c]]
    Stack (⥥):[d!case[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[vunerg[d!case[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]

    Step 21.

    Merge [Tpast!phi] and [vunerg[d!case[d..][bill..]][vunerg[vunerg..][ask..]]]
    Label from [Tpast!phi] (head merging with a non-head)
    [d!case[d][bill]] values uPhi on [Tpast!phi]
    [Tpast] values nom case on [d!case[d][bill]]
    Stream:[[c]]
    Stack (⥥):[d[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[Tpast[Tpast][vunerg[d[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]]

    Step 22.

    Internal merge selected
    Merge [Tpast[Tpast][vunerg[d..][vunerg..]]] and [d[d][bill]]
    Label from [Tpast[Tpast][vunerg[d..][vunerg..]]] (edge feature)
    Stream:[[c]]
    Stack (⥥):[d[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[Tpast[d[d][bill]][Tpast[Tpast][vunerg[d[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]]]

    Step 23.

    Merge [c] and [Tpast[d[d..][bill..]][Tpast[Tpast..][vunerg..]]]
    Label from [c] (head merging with a non-head)
    Stream:[]
    Stack (⥥):[d[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[c[c][Tpast[d[d][bill]][Tpast[Tpast][vunerg[d[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]]]]

    Step 24.

    Local Extent boundary at [c[c][Tpast[d..][Tpast..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [d[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[c[c][Tpast[d[d][bill]][Tpast[Tpast][vunerg[d[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]]]]

    Parse:
    Spell-out:
    bill -ed(sg) ask what mary -ed(sg) buy (after morpheme realization)
    bill ask -ed(sg) what mary buy -ed(sg) (after affix-hop)
    bill ask -ed(sg) what mary buy -ed(sg) (after morpheme realization, stage 2)
    bill asked what mary bought  

    Backtrack

    Stream:[[cQe!wh!T],[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[d[d][mary]]
    [q!scope[q!scope][what]]
    SO:[Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q!scope[q!scope][what]]]]]]]
    re-doing step 12

    Step 25.

    [cQe!T] attracts [Tpast[d[d..][mary..]][Tpast[Tpast..][v*..]]]
    Internal merge selected
    [cQe] values uscope on [q!scope[q!scope][what]]
    Merge [cQe[cQe][Tpast[d..][Tpast..]]] and [q[q][what]]
    Label from [cQe[cQe][Tpast[d..][Tpast..]]] (edge feature)
    Stream:[[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):[d[d][mary]]
    [q[q][what]]
    SO:[cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]

    Step 26.

    Local Extent boundary at [cQe[q[q..][what..]][cQe[cQe..][Tpast..]]]
    New boundary (b) marker stacked
    Stream:[[ask],[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):b
    [d[d][mary]]
    [q[q][what]]
    SO:[cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]

    Step 27.

    Merge [ask] and [cQe[q[q..][what..]][cQe[cQe..][Tpast..]]]
    Label from [ask] (head merging with a non-head)
    Theta-mark [cQe[q[q..][what..]][cQe[cQe..][Tpast..]]]
    Stream:[[vunerg],[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):b
    [d[d][mary]]
    [q[q][what]]
    SO:[ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]

    Step 28.

    Merge [vunerg] and [ask[ask][cQe[q..][cQe..]]]
    Label from [vunerg] (head merging with a non-head)
    Stream:[[[bill!D],[d!case!N]],[Tpast!phi],[c]]
    Stack (⥥):b
    [d[d][mary]]
    [q[q][what]]
    SO:[vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]

    Step 29.

    Begin substream
    Stream:[[bill!D],[d!case!N]]
    Stack (⥥):
    SO:[]

    Step 30.

    Head of stream [bill!D] is the initial SO
    Stream:[[d!case!N]]
    Stack (⥥):
    SO:[bill!D]

    Step 31.

    Merge [d!case!N] and [bill!D]
    Label from [d!case!N] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [bill!D]
    [d!case!N] values D on [bill!D]
    [bill] values N on [d!case!N]
    Stream:[]
    Stack (⥥):
    SO:[d!case[d][bill]]
    End substream, SO [d!case[d][bill]] re-inserted into main stream

    Step 32.

    Stream:[[d!case[d][bill]],[Tpast!phi],[c]]
    Stack (⥥):b
    [d[d][mary]]
    [q[q][what]]
    SO:[vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]

    Step 33.

    Merge [vunerg[vunerg][ask[ask..][cQe..]]] and [d!case[d][bill]]
    Label from [vunerg[vunerg][ask[ask..][cQe..]]] (edge feature)
    Theta-mark [d!case[d][bill]]
    Push [d!case[d][bill]] (unvalued uF) onto stack
    Stream:[[Tpast!phi],[c]]
    Stack (⥥):[d!case[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[vunerg[d!case[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]

    Step 34.

    Merge [Tpast!phi] and [vunerg[d!case[d..][bill..]][vunerg[vunerg..][ask..]]]
    Label from [Tpast!phi] (head merging with a non-head)
    [d!case[d][bill]] values uPhi on [Tpast!phi]
    [Tpast] values nom case on [d!case[d][bill]]
    Stream:[[c]]
    Stack (⥥):[d[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[Tpast[Tpast][vunerg[d[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]]

    Step 35.

    Internal merge selected
    Merge [Tpast[Tpast][vunerg[d..][vunerg..]]] and [d[d][bill]]
    Label from [Tpast[Tpast][vunerg[d..][vunerg..]]] (edge feature)
    Stream:[[c]]
    Stack (⥥):[d[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[Tpast[d[d][bill]][Tpast[Tpast][vunerg[d[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]]]

    Step 36.

    Merge [c] and [Tpast[d[d..][bill..]][Tpast[Tpast..][vunerg..]]]
    Label from [c] (head merging with a non-head)
    Stream:[]
    Stack (⥥):[d[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[c[c][Tpast[d[d][bill]][Tpast[Tpast][vunerg[d[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]]]]

    Step 37.

    Local Extent boundary at [c[c][Tpast[d..][Tpast..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [d[d][bill]]
    b
    [d[d][mary]]
    [q[q][what]]
    SO:[c[c][Tpast[d[d][bill]][Tpast[Tpast][vunerg[d[d][bill]][vunerg[vunerg][ask[ask][cQe[q[q][what]][cQe[cQe][Tpast[d[d][mary]][Tpast[Tpast][v*[d[d][mary]][v*[v*][buy[buy][q[q][what]]]]]]]]]]]]]]]

    Parse:
    Spell-out:
    bill -ed(sg) ask what mary -ed(sg) buy (after morpheme realization)
    bill ask -ed(sg) what mary buy -ed(sg) (after affix-hop)
    bill ask -ed(sg) what mary buy -ed(sg) (after morpheme realization, stage 2)
    bill asked what mary bought  

    2 derivations found.
    Computational Cost:
    Merge: 24, Agree: 19, Unify: 0, Push: 4, Boundaries: 4, Inject: 0
    Non-TOS access: 1, Pop: 0, Depth cost: 53
    Step:012345678910111213141516171819202122232425262728293031323334353637
    Stack depth:00011000122223330003444452333000344445

    Back to top