half of DEMO. TODO: sync data from backend service