some smart changes + other things