Semantic analysis almost done
Merge origin/master