code clean. salt is a duplicate of i