updated dictionary attack code