rewrote some stuff