Typos suggested by @corburn
diff --git a/uuid.go b/uuid.go
index b7b9ced..23161a8 100644
--- a/uuid.go
+++ b/uuid.go
@@ -176,7 +176,7 @@
 	return fmt.Sprintf("BadVariant%d", int(v))
 }
 
-// SetRand sets the random number generator to r, which implents io.Reader.
+// SetRand sets the random number generator to r, which implements io.Reader.
 // If r.Read returns an error when the package requests random data then
 // a panic will be issued.
 //
diff --git a/version1.go b/version1.go
index 22dc07c..199a1ac 100644
--- a/version1.go
+++ b/version1.go
@@ -13,7 +13,7 @@
 // or SetNodeInterface then it will be set automatically.  If the NodeID cannot
 // be set NewUUID returns nil.  If clock sequence has not been set by
 // SetClockSequence then it will be set automatically.  If GetTime fails to
-// return the current NewUUID returns Nil and an error.
+// return the current NewUUID returns nil and an error.
 //
 // In most cases, New should be used.
 func NewUUID() (UUID, error) {
diff --git a/version4.go b/version4.go
index 87977c3..74c4e6c 100644
--- a/version4.go
+++ b/version4.go
@@ -19,7 +19,7 @@
 // The strength of the UUIDs is based on the strength of the crypto/rand
 // package.
 //
-// A note about uniqueness derived from from the UUID Wikipedia entry:
+// A note about uniqueness derived from the UUID Wikipedia entry:
 //
 //  Randomly generated UUIDs have 122 random bits.  One's annual risk of being
 //  hit by a meteorite is estimated to be one chance in 17 billion, that