block scoping
remove duplicate X
Add implementations for example assignment