finished first half of features code snippets