fixed all code hopefully