 //
 
 import Foundation
-
 
 // MARK: ConnectRequest
 

	}

	override internal func isEqual(_ object: Any?) -> Bool {
		if let other = object as? ConnectRequest {
			return self.hashValue == other.hashValue
		}
		return false
	}
}


		self.centralManager.connect(peripheral.core, options: nil)

		// deal with timeout
		self.mainQ.asyncAfter(deadline: DispatchTime.now() + Double(req.timeoutPeriod)) { () -> Void in
			if req.timedOut {
				DispatchQueue.main.async(execute: { () -> Void in
					failure?(CuspError.timedOut)
				})
				// cancel conncect since it's timed out
				self.cancelConnection(peripheral, completion: nil)
				// remove req
				self.reqQ.async(execute: { () -> Void in
					self.connectRequests.remove(req)
				})
			}
		}
	}
