block parser partially done, still have bugs.