working on 'clean' function