make some awsome improvments