         resetPending()
         resetAccumulator()
         resetDescription()
+        resetIsPartialResult()
         internalProgram.removeAll()
         variableValues.removeAll()
+        descriptionCollection.removeAll()
     }
     
     typealias PropertyList = AnyObject

            resetPending()
            resetAccumulator()
            resetDescription()
            internalProgram.removeAll()
            
            if let arrayOfOps = newValue as? [AnyObject] {
                for op in arrayOfOps {

//        description += symbol
        
        if symbol == "√" {
            if descriptionCollection.contains("=") {
                descriptionCollection.insert(")", at: descriptionCollection.index(of: "=")!)
                descriptionCollection.insert("√(", at: 0)
            } else if !descriptionCollection.contains("=") {
                descriptionCollection.insert("√(", at: descriptionCollection.count - 1)
                descriptionCollection.append(")")
            }
        } else if symbol == "=" && (descriptionCollection.filter{$0 == "="}).count >= 1 {
            descriptionCollection = descriptionCollection.filter{$0 != "="}
            descriptionCollection.append(symbol)
        } else {
            descriptionCollection.append(symbol)
        }
