     lock.unlock()
 }
 
+// MARK: - Event Type Definitions
+
 class Event<T> {
     
     typealias EventHandler = (T) -> Void

    }
    
}

func synchronized(lock: NSLocking, @noescape handler: () -> Void) {
    lock.lock()

    }
    
}

// MARK: - Event Handlings and User Interactions

public  typealias InteractionType        = CRToastInteractionType

