added lots of snippets