complete initial working demo