init and updating working