         }
     }
 
-    open var executing: Bool {
+    open var isExecuting: Bool {
         return _status == .executing
     }
 
-    open var finished: Bool {
+    open var isFinished: Bool {
         return _status == .finished
     }
     
-    open var cancelled: Bool {
+    open var isCancelled: Bool {
         return _cancelled
+    }
+    
+    open var isMainThread: Bool {
+        NSUnimplemented()
     }
     
     open func cancel() {
         _cancelled = true
     }
 
-    open class func callStackReturnAddresses() -> [NSNumber] {
-        NSUnimplemented()
-    }
-    
-    open class func callStackSymbols() -> [String] {
-        NSUnimplemented()
-    }
-}
+    open class var callStackReturnAddresses: [NSNumber] {
+        NSUnimplemented()
+    }
+    
+    open class var callStackSymbols: [String] {
+        NSUnimplemented()
+    }
+}
+
+extension NSNotification.Name {
+    public static let NSWillBecomeMultiThreaded = NSNotification.Name(rawValue: "") // NSUnimplemented
+    public static let NSDidBecomeSingleThreaded = NSNotification.Name(rawValue: "") // NSUnimplemented
+    public static let NSThreadWillExit = NSNotification.Name(rawValue: "") // NSUnimplemented
+}

    
    open func main() {
        _main()
    }

    open var stackSize: Int {

        }
    }

    open class func sleep(forTimeInterval interval: TimeInterval) {
        var ti = interval
        let start_ut = CFGetSystemUptime()
        let end_ut = start_ut + ti
