Made quite a few changes