added some stuff to make it better