some refactoring
add example file with feedback