             var value: Data
         }
         
-        private var services = [CBService: Service]()
-        
-        private var characteristics = [CBCharacteristic: Characteristic]()
+        private var services = [CBMutableService: Service]()
+        
+        private var characteristics = [CBMutableCharacteristic: Characteristic]()
         
         /// Do not access directly, use `newHandle()`
         private var lastHandle: UInt16 = 0x0000

                }
                
                // compute new data
                
                newValues[index] = newValue
            }
            

            }
        }
        
        subscript(characteristic: CBCharacteristic) -> Data {
            
            get {
                
