backend and many changes