implemented rudimentary has method