reworked some stuff