Part 4 added and results match up pretty good (but not perfect)