clenup
simplified has_member