pretty much works, need to fix parsing out a bug branch