copied from projects/todomvc/todomvc-granular