Port back to SGMLParser