added implicit diff