First

In progress
2

cpp. going to switch to scala
3

added state variable