adding an explicit check
separating out interfaces