working on expression expansion