Great article, thank you!
Michael Gayday

Good point. 
Indeed there is a similar code.

Have some ideas to refactor it, for simplicity it was separated.

Like what you read? Give Yonatan V. Levin a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.