modified Type System
finished closed variable