Added checking for interface implementation