unsigned long lsqrt (unsigned long n);