```
{|
!
foo
!
bar
|}
```
See parsoid peg output and html output
```
[subbu@earth:~/work/wmf/parsoid] parse.js --trace peg --normalize=parsoid< /tmp/wt
0-[peg] | ----> [{"type":"TagTk","name":"table","attribs":[],"dataAttribs":{"tsr":[0,2]}}]
0-[peg] | ----> [{"type":"NlTk","dataAttribs":{"tsr":[2,3]}}," ",{"type":"TagTk","name":"th","attribs":[],"dataAttribs":{"tsr":[4,5],"tmp":{"noAttrs":true}}},{"type":"NlTk","dataAttribs":{"tsr":[5,6]}}," ","foo",{"type":"NlTk","dataAttribs":{"tsr":[10,11]}}," ","!",{"type":"NlTk","dataAttribs":{"tsr":[13,14]}}," ","bar",{"type":"NlTk","dataAttribs":{"tsr":[18,19]}}," ",{"type":"SelfclosingTagTk","name":"meta","attribs":[{"k":"typeof","v":"mw:TSRMarker"},{"k":"data-etag","v":"th"}],"dataAttribs":{"tsr":[20,20]}}]
0-[peg] | ----> ["|}"]
0-[peg] | ----> [{"type":"NlTk","dataAttribs":{"tsr":[22,23]}}]
0-[peg] | ----> [{"type":"EOFTk"}]
<table>
<tbody>
<tr>
<th><pre>foo
!
bar
|}</pre></th>
</tr>
</tbody>
</table>
```
PEG continues to parse as indent-pre even though we are in a table context and the ! should reset to table heading.