updated for some bugs
updates
merged ALL the things