point set implementation