checkpoint
second checkpoint
example for variable introduction added
third checkpoint (refactored more code)
minor fix