major strategies implemented, just need to fix some things here and there and finish the writeup
fixed merge conflict