implemented keydetails