Expr refactoring

Change-Id: I79c8573c93144f2532353a0a7c9555d7489489a5