removed boilerplate stuff and added example