Code here. You'll need to change the path to boost headers in the includes to make it run.