added intrinsic square root function