some fixes to shape parsing