updated, working demo