rearrainged sln a bit