has function