©
Roy Tanck
, code available on
Github
.