a few changes, main stuff remains untouched