Why the `.iter()`? Doesn't this make this `O(n)` when it could easily be `O(1)` (e.g. [`p.open_braces.last_opt()`](http://static.rust-lang.org/doc/master/std/vec/trait.ImmutableVector.html#tymethod.last_opt)).