             defaults.colorLists.removeAtIndex(row)
             colorLists!.removeRow(row)
         }
+    }
+    
+    @IBAction func duplicateColorList(sender: AnyObject)
+    {
+        var row = colorLists!.selectedRow+1
+        defaults.colorLists.insert(defaults.colorLists[colorLists!.selectedRow], atIndex:row)
+        colorLists!.insertRow(row)
+        colorLists!.selectRow(row)
+    }
+    
+    @IBAction func restoreDefaultColorLists(sender: AnyObject)
+    {
+        defaults.colorLists = defaults.defaultColorLists
+        colorLists!.clear()
+        colors!.clear()
+        colorLists!.insertRows(defaults.colorLists.count)
+        colorLists!.selectRow(0)
     }
     
     func updateColorList(listIndex:Int)

        }
    }
    
    @IBAction func duplicateColorList(sender: AnyObject)
    {
        println("duplicateColorList")
    }

    @IBAction func restoreDefaultColorLists(sender: AnyObject)
    {
        println("restoreDefaultColorLists")
        defaults.colorLists = defaults.defaultColorLists
        colorLists!.clear()
        colors!.clear()
        colorLists!.insertRows(defaults.colorLists.count)
        colorLists!.selectRow(0)
    }

    @IBAction func duplicateColor(sender: AnyObject)
    {
        println("duplicateColor")

    @IBAction func addColorList(sender: AnyObject)
    {
        var row = colorLists!.selectedRow+1
        defaults.colorLists.insert([randColor()], atIndex:row)
        colorLists!.insertRow(row)
        colorLists!.selectRow(row)
    }
