 	}
 
 	public init(_ value: T, file: String = __FILE__, line: Int = __LINE__, function: String = __FUNCTION__) {
-		self.value = value
+		_value = value
+
 		self.file = file
 		self.line = line
 		self.function = function

	/// Setting this to a new value will notify all sinks attached to
	/// `values`.
	public var value: T {
		didSet {
			dispatch_sync(queue) {
				for sink in self.sinks {
					sink.put(.Next(Box(self.value)))
				}
			}
		}


				dispatch_sync(strongSelf.queue) {
					token = strongSelf.sinks.insert(sink)
					sink.put(.Next(Box(strongSelf._value)))
				}

				disposable.addDisposable {
