     - parameter uuid: UUID of the region to stop listening for
     */
     public func stopListening(uuid: NSUUID) {
-        if let region = regions[uuid] {
+        if let region = regions[uuid.UUIDString] {
             stopListening(region)
-            regions[uuid] = nil
+            regions[uuid.UUIDString] = nil
         }
     }
     

        // create a CLBeaconRegion for each different UUID
        for uuid in distinctUnionOfUUIDs(beacons) {
            
            regions[uuid] = self.regionForUUID(uuid)
        }
    }
    

    // MARK: - Private Helper
    
    private func regionForUUID(uuid: NSUUID) -> CLBeaconRegion {
        let region = CLBeaconRegion(proximityUUID: uuid, identifier: "\(regionIdentifier)-\(uuid.UUIDString)")
        region.notifyEntryStateOnDisplay = true
        return region
    }
