using diamond inference