some changes, not working yet :(