working app (with updates)