diff --git a/abs.lisp b/abs.lisp
index e69de29..2a4675e 100644
--- a/abs.lisp
+++ b/abs.lisp
@@ -0,0 +1,8 @@
+(in-package :math-algo)
+
+(defun my-abs (x)
+  (if (< x 0)
+      (- x)
+      x))
+
+
diff --git a/average.lisp b/average.lisp
index 828c260..34760ed 100644
--- a/average.lisp
+++ b/average.lisp
@@ -1,5 +1,5 @@
 (in-package :math-algo)

-(defun average (x y)
+(defun my-average (x y)
     (/ (+ x y)
        2))
diff --git a/packages.lisp b/packages.lisp
index b486e0a..01f4cf6 100644
--- a/packages.lisp
+++ b/packages.lisp
@@ -5,6 +5,8 @@
   (:documentation "Implement some math algorithms")
   (:nicknames :math-algo)
   (:use :common-lisp)
-  (:export square
-           average
-           gradually-approaching-sqrt))
+  (:export my-square
+           my-abs
+           my-average
+           my-sqrt
+           my-factorial))
diff --git a/sqrt.lisp b/sqrt.lisp
index 9ea8392..1493c66 100644
--- a/sqrt.lisp
+++ b/sqrt.lisp
@@ -1,13 +1,13 @@
 (in-package :math-algo)

-(defun gradually-approaching-sqrt (x)
-  (defun good-enough? (guess)
-    (< (abs (- (square guess) x)) 0.001))
-  (defun improve (guess)
-    (average guess (/ x guess)))
-  (defun sqrt-iter (guess)
-    (if (good-enough? guess)
+(defun my-sqrt (x)
+  (defun my-good-enough? (guess)
+    (< (my-abs (- (my-square guess) x)) 0.001))
+  (defun my-improve (guess)
+    (my-average guess (/ x guess)))
+  (defun my-sqrt-iter (guess)
+    (if (my-good-enough? guess)
         guess
-        (sqrt-iter (improve guess))))
-  (sqrt-iter 1.0))
+        (my-sqrt-iter (my-improve guess))))
+  (my-sqrt-iter 1.0))

diff --git a/square.lisp b/square.lisp
index 3b1512f..c28582c 100644
--- a/square.lisp
+++ b/square.lisp
@@ -1,4 +1,4 @@
 (in-package :math-algo)

-(defun square (x)
+(defun my-square (x)
     (* x x))