dep(implementation:NN:2, which:WDT:1)|||nsubjpass(prefer:VBN:10, implementation:NN:2)|||punct(vs:JJ:5, -lrb-:-LRB-:3)|||advmod(vs:JJ:5, array-based:RB:4)|||dep(implementation:NN:2, vs:JJ:5)|||dep(vs:JJ:5, list-based:JJ:7)|||punct(vs:JJ:5, -rrb-:-RRB-:8)|||auxpass(prefer:VBN:10, be:VBZ:9)|||root(ROOT:ROOT:15, prefer:VBN:10)|||conj_and(prefer:VBN:10, why:WRB:13)|||root(ROOT:ROOT:15, why:WRB:13)|||<STOP>
nsubj(preferred:JJ:3, Array:NNP:1)|||cop(preferred:JJ:3, be:VBZ:2)|||root(ROOT:ROOT:5, preferred:JJ:3)|||<STOP> amod(implementation:NN:3, link:VBN:1)|||nn(implementation:NN:3, list:NN:2)|||nsubj(require:VBZ:4, implementation:NN:3)|||root(ROOT:ROOT:11, require:VBZ:4)|||amod(space:NN:6, extra:JJ:5)|||dobj(require:VBZ:4, space:NN:6)|||nn(pointer:NNS:9, store:NN:8)|||prep_to(require:VBZ:4, pointer:NNS:9)|||<STOP> nsubjpass(allocate:VBN:3, Space:NNP:1)|||auxpass(allocate:VBN:3, be:VBZ:2)|||root(ROOT:ROOT:13, allocate:VBN:3)|||advmod(allocate:VBN:3, dynamically:RB:4)|||det(list-based:NN:7, the:DT:6)|||prep_in(allocate:VBN:3, list-based:NN:7)|||nsubj(take:VBZ:9, list-based:NN:7)|||rel(take:VBZ:9, which:WDT:8)|||rcmod(list-based:NN:7, take:VBZ:9)|||amod(time:NN:11, more:JJR:10)|||dobj(take:VBZ:9, time:NN:11)|||<STOP>