code reworked some + roll toggle