need to write identity calculations