Added example & some refactor.