Added optional spaces
Made some distinction between space and optional space