big changes, almost all works