start sentence

graph sentence
  state start
    ["always", ("sub", "np-cnj"), [("note", "kind", "statement"), "receive", ("to", "need-vb")]]
    ["always", ("sub", "vp"), [("lift", "vtype"), ("note", "kind", "command"), "receive", ("to", "had-vb")]]
  state need-vb
    ["always", ("sub", "vp"), [("lift", "vtype"), "receive", ("to", "had-vb")]]
  state had-vb
    [("=", ("value", "vtype"), "t"), ("sub", "np-cnj"), ["receive", ("to", "had-obj")]]
    [[("=", ("value", "vtype"), "i")], (), ("to", "had-obj")]
    [[("=", ("value", "vtype"), "e")], (), ("to", "need-comp")]
    [[("=", ("value", "vtype"), "i"), "end"], (), ("accept", ("value", "kind"))]
  state need-comp
    [("cat", "madj"), ("sub", "adj-grp"), ["receive", "stay"]]
    [("cat", "adj"), "consume", ["build", "stay"]]
    ["always", (), ("jump", "had-obj")]
  state had-obj
    [("cat", "prp"), ("sub", "prpp"), ["receive", ("to", "had-prpp")]]
    [("cat", "madj", "adv"), ("sub", "advp"), ["receive", ("to", "had-advp")]]
    ["end", (), ("accept", ("value", "kind"))]
  state had-advp
    [("cat", "prp"), ("sub", "prpp"), ["receive", ("to", "had-advp-prpp")]]
    ["end", (), ("accept", ("value", "kind"))]
  state had-prpp
    [("cat", "madj", "adv"), ("sub", "advp"), ["receive", ("to", "had-advp-prpp")]]
    ["end", (), ("accept", ("value", "kind"))]
  state had-advp-prpp
    [[("cat", "cnj"), ("not", ("has", "mod", "big"))], "consume", ["build", ("to", "need-more")]]
    ["end", (), ("accept", ("value", "kind"))]
  state need-more
    [("cat", "prp"), ("sub", "prpp"), ["receive", ("to", "had-prpp")]]
    [("cat", "madj", "adv"), ("sub", "advp"), ["receive", ("to", "had-advp")]]    

graph np-cnj
  state start
    ["always", ("sub", "np"), ["receive", ("to", "had-np")]]
  state had-np
    [[("cat", "cnj"), ("not", ("has", "mod", "big"))], "consume", ["build", ("to", "had-cnj")]]
    ["always", (), ("accept", "nosolo")]
  state had-cnj
    ["always", ("sub", "np"), ["receive", ("to", "had-np")]]

graph np
  state start
    [("cat", "art"), "consume", ["build", ("to", "after-art")]]
    ["always", (), ("jump", "after-art")]
  state after-art
    [("cat", "madj"), ("sub", "adj-grp"), ["receive", "stay"]]
    [("cat", "adj"), "consume", ["build", "stay"]]
    [[("cat", "nn"), ("not", ("cat", "adj"))], ("sub", "nn-grp"), ["receive", ("to", "after-nn")]]
    [("cat", "nn"), "consume", ["build", ("to", "after-nn")]]
  state after-nn
    [("cat", "prp"), ("sub", "prpp"), ["receive", "accept"]]
    ["always", (), "accept"]

graph adj-grp
  state start
    [("cat", "adj"), "consume", ["build", "accept"]]
    [("cat", "madj"), "consume", ["build", "stay"]]

graph nn-grp
  state start
    [("cat", "nn"), "consume", ["build", ("to", "after-nn")]]
  state after-nn
    [("cat", "nn"), "consume", ["build", "accept"]]

graph prpp
  state start
    [("cat", "prp"), "consume", ["build", ("to", "after-prp")]]
  state after-prp
    ["always", ("sub", "np"), ["receive", "accept"]]

graph vp
  state start
    [("or", ("cat", "madj"), ("cat", "adv")), ("sub", "advp"), ["receive", ("to", "need-vb")]]
    [("cat", "vb"), "consume", [("note", "vtype", ("tag", "typ")), "build", ("to", "had-vb")]]
  state need-vb
    [("cat", "vb"), "consume", [("note", "vtype", ("tag", "typ")), "build", ("to", "had-vb")]]
  state had-vb
    [("or", ("cat", "madj"), ("cat", "adv")), ("sub", "advp"), ["receive", "accept"]]
    ["always", (), "accept"]

graph advp
  state start
    [("cat", "madj"), ("sub", "adv-grp"), ["receive", ("to", "after-one")]]
    [("cat", "adv"), "consume", ["build", ("to", "after-one")]]
  state after-one
    [[("cat", "cnj"), ("not", ("has", "mod", "big"))], "consume", ["build", ("to", "need-more")]]
    [("cat", "madj"), ("sub", "adv-grp"), ["receive", "stay"]]
    [("cat", "adv"), "consume", ["build", "stay"]]
    [("cat", "vb"), "consume", ["build", ("to", "had-vb")]]
  state need-more
    [("cat", "madj"), ("sub", "adv-grp"), ["receive", ("to", "after-one")]]
    [("cat", "adv"), "consume", ["build", ("to", "after-one")]]
  state had-vb
    [("cat", "madj"), ("sub", "adv-grp"), ["receive", "stay"]]
    [("cat", "adv"), "consume", ["build", "stay"]]
    ["always", (), "accept"]

graph adv-grp
  state start
    [("cat", "madj"), "consume", ["build", "stay"]]
    [("cat", "adv"), "consume", "accept"]