From 72c342284c13a8f524b5f1aef3bf452f85dd8eee Mon Sep 17 00:00:00 2001 From: Fredrik Karlsson Date: Mon, 27 Jun 2016 17:19:58 +0200 Subject: [PATCH 01/30] [ios] map view now calls -didAddAnnotationViews (#5466) --- platform/ios/src/MGLMapView.mm | 6 ++++++ platform/ios/src/MGLMapViewDelegate.h | 31 ++++++++++++++++++--------- 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/platform/ios/src/MGLMapView.mm b/platform/ios/src/MGLMapView.mm index c0dacb50f..19f5e425e 100644 --- a/platform/ios/src/MGLMapView.mm +++ b/platform/ios/src/MGLMapView.mm @@ -2934,6 +2934,12 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) [self updateAnnotationContainerViewWithAnnotationViews:newAnnotationViews]; [self didChangeValueForKey:@"annotations"]; + + if ([self.delegate respondsToSelector:@selector(mapView:didAddAnnotationViews:)]) + { + [self.delegate mapView:self didAddAnnotationViews:newAnnotationViews]; + } + UIAccessibilityPostNotification(UIAccessibilityLayoutChangedNotification, nil); } diff --git a/platform/ios/src/MGLMapViewDelegate.h b/platform/ios/src/MGLMapViewDelegate.h index 173b40f93..f425964e9 100644 --- a/platform/ios/src/MGLMapViewDelegate.h +++ b/platform/ios/src/MGLMapViewDelegate.h @@ -130,15 +130,6 @@ NS_ASSUME_NONNULL_BEGIN #pragma mark Managing the Display of Annotations -/** - Returns a view object to use for the marker for the specified point annotation object. - - @param mapView The map view that requested the annotation view. - @param annotation The object representing the annotation that is about to be displayed. - @return The view object to display for the specified annotation or `nil` if you want to display the default marker image. - */ -- (nullable MGLAnnotationView *)mapView:(MGLMapView *)mapView viewForAnnotation:(id )annotation; - /** Returns an image object to use for the marker for the specified point annotation object. @@ -279,7 +270,6 @@ NS_ASSUME_NONNULL_BEGIN */ - (void)mapView:(MGLMapView *)mapView didDeselectAnnotation:(id )annotation; - /** Tells the delegate that one of its annotation views was selected. @@ -300,6 +290,27 @@ NS_ASSUME_NONNULL_BEGIN */ - (void)mapView:(MGLMapView *)mapView didDeselectAnnotationView:(MGLAnnotationView *)annotationView; +#pragma mark Managing annotation views + +/** + Returns a view object to use for the marker for the specified point annotation object. + + @param mapView The map view that requested the annotation view. + @param annotation The object representing the annotation that is about to be displayed. + @return The view object to display for the specified annotation or `nil` if you want to display the default marker image. + */ +- (nullable MGLAnnotationView *)mapView:(MGLMapView *)mapView viewForAnnotation:(id )annotation; + +/** + Tells the delegate that new annotation views have been added and positioned on the map. + + You can use this method to animate the adding of the annotation views. + + @param mapView The map view containing the annotation views. + @param annotationViews The annotation views that was added. + */ +- (void)mapView:(MGLMapView *)mapView didAddAnnotationViews:(NS_ARRAY_OF(MGLAnnotationView *) *)annotationViews; + /** Tells the delegate that one if its annotation views was dragged to a new coordinate. From c96b7dae687f43a7ca233698554aa33eb3180f0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Minh=20Nguy=E1=BB=85n?= Date: Tue, 28 Jun 2016 10:03:55 -0700 Subject: [PATCH 02/30] [ios] Specify ultra light weight literally (#5497) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixed a crash on iOS 8.1 and below due to specifying the compass legend’s font weight using a font weight constant that was introduced in iOS 8.2. Fixes #5486. --- platform/ios/src/MGLMapView.mm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/platform/ios/src/MGLMapView.mm b/platform/ios/src/MGLMapView.mm index 19f5e425e..25cf23c87 100644 --- a/platform/ios/src/MGLMapView.mm +++ b/platform/ios/src/MGLMapView.mm @@ -579,8 +579,9 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) UIGraphicsBeginImageContextWithOptions(scaleImage.size, NO, [UIScreen mainScreen].scale); [scaleImage drawInRect:{ CGPointZero, scaleImage.size }]; + CGFloat weight = &UIFontWeightUltraLight ? UIFontWeightUltraLight : -0.8; NSAttributedString *north = [[NSAttributedString alloc] initWithString:NSLocalizedStringWithDefaultValue(@"COMPASS_NORTH", nil, nil, @"N", @"Compass abbreviation for north") attributes:@{ - NSFontAttributeName: [UIFont systemFontOfSize:9 weight:UIFontWeightUltraLight], + NSFontAttributeName: [UIFont systemFontOfSize:9 weight:weight], NSForegroundColorAttributeName: [UIColor whiteColor], }]; CGRect stringRect = CGRectMake((scaleImage.size.width - north.size.width) / 2, From 16b859ff5f0463f27d7250bf1e82fa7236304285 Mon Sep 17 00:00:00 2001 From: Jesse Bounds Date: Tue, 28 Jun 2016 12:07:12 -0700 Subject: [PATCH 03/30] [ios] Always set map view reference when annotation view is created. (#5496) This fixes two issues with annotation views that were exposed when dragging them: 1) The annotation view's mapView property was not set until it was moved (in `updateAnnotations:`) so it did not always call its delegate back about the map view delegate dragging methods. This adds a call to set the property when an annotation view is created so the delegate methods are always called. 2) Since the mapView is now always set, a call to the map view's callout view for selected annotation was added to the annotation view drag handler. This forces the callout to close and eliminates an issue where the callout would remain visible as an annotation was dragged away which had the visual effect of a detached callout. To make 2 possible, the map views selected callout view was exposed in the private header. --- platform/ios/src/MGLAnnotationView.mm | 7 ++-- platform/ios/src/MGLMapView.mm | 1 + platform/ios/src/MGLMapView_Internal.h | 3 ++ platform/ios/test/MGLAnnotationViewTests.m | 38 +++++++++++++++++++--- 4 files changed, 42 insertions(+), 7 deletions(-) diff --git a/platform/ios/src/MGLAnnotationView.mm b/platform/ios/src/MGLAnnotationView.mm index e086e3bde..7068cdc0d 100644 --- a/platform/ios/src/MGLAnnotationView.mm +++ b/platform/ios/src/MGLAnnotationView.mm @@ -187,7 +187,7 @@ { CGPoint center = [sender locationInView:sender.view.superview]; [self setCenter:center pitch:self.mapView.camera.pitch]; - + if (sender.state == UIGestureRecognizerStateEnded) { self.dragState = MGLAnnotationViewDragStateNone; } @@ -206,9 +206,10 @@ if (dragState == MGLAnnotationViewDragStateStarting) { + [self.mapView.calloutViewForSelectedAnnotation dismissCalloutAnimated:animated]; [self.superview bringSubviewToFront:self]; } - + if (dragState == MGLAnnotationViewDragStateEnding) { if ([self.mapView.delegate respondsToSelector:@selector(mapView:didDragAnnotationView:toCoordinate:)]) @@ -231,7 +232,7 @@ { return NO; } - + return YES; } diff --git a/platform/ios/src/MGLMapView.mm b/platform/ios/src/MGLMapView.mm index 25cf23c87..cd41f41d2 100644 --- a/platform/ios/src/MGLMapView.mm +++ b/platform/ios/src/MGLMapView.mm @@ -3004,6 +3004,7 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) if (annotationView) { annotationView.annotation = annotation; + annotationView.mapView = self; CGRect bounds = UIEdgeInsetsInsetRect({ CGPointZero, annotationView.frame.size }, annotationView.alignmentRectInsets); _largestAnnotationViewSize = CGSizeMake(MAX(_largestAnnotationViewSize.width, CGRectGetWidth(bounds)), diff --git a/platform/ios/src/MGLMapView_Internal.h b/platform/ios/src/MGLMapView_Internal.h index 6225e1174..9133aca85 100644 --- a/platform/ios/src/MGLMapView_Internal.h +++ b/platform/ios/src/MGLMapView_Internal.h @@ -5,6 +5,9 @@ extern const CGSize MGLAnnotationAccessibilityElementMinimumSize; @interface MGLMapView (Internal) +/// Currently shown popover representing the selected annotation. +@property (nonatomic) UIView *calloutViewForSelectedAnnotation; + /** Triggers another render pass even when it is not necessary. */ - (void)setNeedsGLDisplay; diff --git a/platform/ios/test/MGLAnnotationViewTests.m b/platform/ios/test/MGLAnnotationViewTests.m index 541c43b5a..6cc569839 100644 --- a/platform/ios/test/MGLAnnotationViewTests.m +++ b/platform/ios/test/MGLAnnotationViewTests.m @@ -3,6 +3,17 @@ static NSString * const MGLTestAnnotationReuseIdentifer = @"MGLTestAnnotationReuseIdentifer"; +@interface MGLAnnotationView (Test) +@property (nonatomic) MGLMapView *mapView; +@property (nonatomic, readwrite) MGLAnnotationViewDragState dragState; + +- (void)setDragState:(MGLAnnotationViewDragState)dragState; +@end + +@interface MGLMapView (Test) +@property (nonatomic) UIView *calloutViewForSelectedAnnotation; +@end + @interface MGLTestAnnotation : NSObject @property (nonatomic, assign) CLLocationCoordinate2D coordinate; @end @@ -10,6 +21,19 @@ static NSString * const MGLTestAnnotationReuseIdentifer = @"MGLTestAnnotationReu @implementation MGLTestAnnotation @end +@interface MGLTestCalloutView: UIView +@property (nonatomic) BOOL didCallDismissCalloutAnimated; +@end + +@implementation MGLTestCalloutView + +- (void)dismissCalloutAnimated:(BOOL)animated +{ + _didCallDismissCalloutAnimated = YES; +} + +@end + @interface MGLAnnotationViewTests : XCTestCase @property (nonatomic) XCTestExpectation *expectation; @property (nonatomic) MGLMapView *mapView; @@ -28,15 +52,21 @@ static NSString * const MGLTestAnnotationReuseIdentifer = @"MGLTestAnnotationReu - (void)testAnnotationView { _expectation = [self expectationWithDescription:@"annotation property"]; - + MGLTestAnnotation *annotation = [[MGLTestAnnotation alloc] init]; [_mapView addAnnotation:annotation]; - + [self waitForExpectationsWithTimeout:1 handler:nil]; - + XCTAssert(_mapView.annotations.count == 1, @"number of annotations should be 1"); XCTAssertNotNil(_annotationView.annotation, @"annotation property should not be nil"); - + XCTAssertNotNil(_annotationView.mapView, @"mapView property should not be nil"); + + MGLTestCalloutView *testCalloutView = [[MGLTestCalloutView alloc] init]; + _mapView.calloutViewForSelectedAnnotation = testCalloutView; + _annotationView.dragState = MGLAnnotationViewDragStateStarting; + XCTAssertTrue(testCalloutView.didCallDismissCalloutAnimated, @"callout view was not dismissed"); + [_mapView removeAnnotation:_annotationView.annotation]; XCTAssert(_mapView.annotations.count == 0, @"number of annotations should be 0"); From bf079a285fb3c2f618ae9672b79a926fca48efeb Mon Sep 17 00:00:00 2001 From: Fredrik Karlsson Date: Wed, 29 Jun 2016 13:57:49 +0200 Subject: [PATCH 04/30] [ios] prevent a race condition by not fulfilling the expectation until the view has been added (#5507) --- platform/ios/test/MGLAnnotationViewTests.m | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/platform/ios/test/MGLAnnotationViewTests.m b/platform/ios/test/MGLAnnotationViewTests.m index 6cc569839..65d7b3d35 100644 --- a/platform/ios/test/MGLAnnotationViewTests.m +++ b/platform/ios/test/MGLAnnotationViewTests.m @@ -84,9 +84,12 @@ static NSString * const MGLTestAnnotationReuseIdentifer = @"MGLTestAnnotationReu _annotationView = annotationView; - [_expectation fulfill]; - return annotationView; } +- (void)mapView:(MGLMapView *)mapView didAddAnnotationViews:(NSArray *)annotationViews +{ + [_expectation fulfill]; +} + @end From 1a6b5137031d96dcbfb38d0e1a2289386502c7e4 Mon Sep 17 00:00:00 2001 From: Jason Wray Date: Wed, 29 Jun 2016 12:48:53 -0400 Subject: [PATCH 05/30] [ios] Fix conflict between view dragging gesture and quick zoom (#5506) This stops the quick zoom gesture (double-tap and hold) from also triggering a drag, when performed on a draggable annotation view. --- platform/ios/src/MGLAnnotationView.mm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/ios/src/MGLAnnotationView.mm b/platform/ios/src/MGLAnnotationView.mm index 7068cdc0d..3bbe2fcc8 100644 --- a/platform/ios/src/MGLAnnotationView.mm +++ b/platform/ios/src/MGLAnnotationView.mm @@ -238,7 +238,7 @@ - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { - return YES; + return otherGestureRecognizer == _longPressRecognizer || otherGestureRecognizer == _panGestureRecognizer; } - (id)actionForLayer:(CALayer *)layer forKey:(NSString *)event From 2933ef1c09f9bcd446c01b029f90a0bb7b6d1228 Mon Sep 17 00:00:00 2001 From: Jesse Bounds Date: Wed, 29 Jun 2016 11:14:10 -0700 Subject: [PATCH 06/30] [ios] Always use symbol name for annotation update (#5509) This removes the guard that used to be in place from the time when UIView backed annotations did not have invisible image placeholders. Since images are now present for both sprite and UIView backed annotations, the guard is no longer necessary and removing it allows for the correct symbol name to be passed to the map object and this gets rid of `[INFO] {Worker}[Sprite]: Can't find sprite named 'default_marker'` log message. --- platform/ios/src/MGLMapView.mm | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/platform/ios/src/MGLMapView.mm b/platform/ios/src/MGLMapView.mm index cd41f41d2..23aa9a2a1 100644 --- a/platform/ios/src/MGLMapView.mm +++ b/platform/ios/src/MGLMapView.mm @@ -1768,16 +1768,12 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) if (annotation == [self annotationWithTag:annotationTag]) { const mbgl::Point point = MGLPointFromLocationCoordinate2D(annotation.coordinate); - - MGLAnnotationContext &annotationContext = _annotationContextsByAnnotationTag.at(annotationTag); + NSString *symbolName; - if (!annotationContext.annotationView) - { - MGLAnnotationImage *annotationImage = [self imageOfAnnotationWithTag:annotationTag]; - symbolName = annotationImage.styleIconIdentifier; - } - - _mbglMap->updateAnnotation(annotationTag, mbgl::SymbolAnnotation { point, symbolName.UTF8String ?: "" }); + MGLAnnotationImage *annotationImage = [self imageOfAnnotationWithTag:annotationTag]; + symbolName = annotationImage.styleIconIdentifier; + + _mbglMap->updateAnnotation(annotationTag, mbgl::SymbolAnnotation { point, symbolName.UTF8String}); if (annotationTag == _selectedAnnotationTag) { [self deselectAnnotation:annotation animated:YES]; From f7b646cac59e1a31157a8eebae595b613d548971 Mon Sep 17 00:00:00 2001 From: Jesse Bounds Date: Wed, 29 Jun 2016 11:14:34 -0700 Subject: [PATCH 07/30] [ios, macos] Use common instead of default mode for run loop source (#5503) The map events instigated by certain actions (i.e. updates from a UIScrollView) are not processed by the run loop with `kCFRunLoopDefaultMode`until the thread is idle. This changes the mode to `kCFRunLoopCommonModes` to avoid this issue. --- platform/darwin/src/async_task.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/darwin/src/async_task.cpp b/platform/darwin/src/async_task.cpp index 513629726..48457d24a 100644 --- a/platform/darwin/src/async_task.cpp +++ b/platform/darwin/src/async_task.cpp @@ -25,7 +25,7 @@ public: perform }; source = CFRunLoopSourceCreate(kCFAllocatorDefault, 0, &context); - CFRunLoopAddSource(loop, source, kCFRunLoopDefaultMode); + CFRunLoopAddSource(loop, source, kCFRunLoopCommonModes); } ~Impl() { From 5389f04da5f66c5e26d71e761a0fcda4d8382581 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Minh=20Nguy=E1=BB=85n?= Date: Wed, 29 Jun 2016 15:48:02 -0700 Subject: [PATCH 08/30] Adjustable map deceleration rate (#5504) * [ios] Adds the ability to customize map deceleration speed * [ios] Made pinch, rotation deceleration adjustable too Drift zooming and drift rotation also respect the deceleration rate. A side effect of this change is that drift zooming will come to a stop ever-so-slightly sooner now. * [ios] Documented deceleration rates Added documentation for deceleration rate constants. Also updated the changelog. --- platform/ios/CHANGELOG.md | 1 + platform/ios/jazzy.yml | 3 +++ platform/ios/src/MGLMapView.h | 20 ++++++++++++++++++++ platform/ios/src/MGLMapView.mm | 30 +++++++++++++++++------------- 4 files changed, 41 insertions(+), 13 deletions(-) diff --git a/platform/ios/CHANGELOG.md b/platform/ios/CHANGELOG.md index 4f1d1b737..03f08104e 100644 --- a/platform/ios/CHANGELOG.md +++ b/platform/ios/CHANGELOG.md @@ -15,6 +15,7 @@ Mapbox welcomes participation and contributions from everyone. Please read [CON - `MGLOfflinePackProgress` now indicates how many tiles have been downloaded and how much space they take up. ([#4874](https://github.com/mapbox/mapbox-gl-native/pull/4874)) - The compass, user dot, and visible annotations are now accessible to VoiceOver users. ([#1496](https://github.com/mapbox/mapbox-gl-native/pull/1496)) - Added a method to MGLMapView, `-anchorPointForGesture:`, that you can override to anchor gestures at a point other than the user location. ([#5302](https://github.com/mapbox/mapbox-gl-native/pull/5302)) +- Added a property to MGLMapView, `decelerationRate`, that allows you to speed up or slow down the drift animation at the end of a user gesture. You can also use this property to disable the drift animation entirely. ([#5504](https://github.com/mapbox/mapbox-gl-native/pull/5504)) - Fixed an issue (speculatively) where the tile cache could be included in iCloud backups. ([#5124](https://github.com/mapbox/mapbox-gl-native/pull/5124)) - Improved performance viewing regions with large landcover polygons when viewing a style that uses the Mapbox Streets source. ([#2444](https://github.com/mapbox/mapbox-gl-native/pull/2444)) - Fixed a memory leak when using raster resources. ([#5141](https://github.com/mapbox/mapbox-gl-native/pull/5141)) diff --git a/platform/ios/jazzy.yml b/platform/ios/jazzy.yml index 67d877cda..fee1dd889 100644 --- a/platform/ios/jazzy.yml +++ b/platform/ios/jazzy.yml @@ -21,6 +21,9 @@ custom_categories: - MGLMapCamera - MGLMapDebugMaskOptions - MGLMapView + - MGLMapViewDecelerationRateFast + - MGLMapViewDecelerationRateImmediate + - MGLMapViewDecelerationRateNormal - MGLMapViewDelegate - MGLStyle - MGLStyleDefaultVersion diff --git a/platform/ios/src/MGLMapView.h b/platform/ios/src/MGLMapView.h index 3f649e45d..de851bc1e 100644 --- a/platform/ios/src/MGLMapView.h +++ b/platform/ios/src/MGLMapView.h @@ -21,6 +21,15 @@ NS_ASSUME_NONNULL_BEGIN @protocol MGLCalloutView; @protocol MGLFeature; +/** The default deceleration rate for a map view. */ +extern const CGFloat MGLMapViewDecelerationRateNormal; + +/** A fast deceleration rate for a map view. */ +extern const CGFloat MGLMapViewDecelerationRateFast; + +/** Disables decleration in a map view. */ +extern const CGFloat MGLMapViewDecelerationRateImmediate; + /** The vertical alignment of an annotation within a map view. */ typedef NS_ENUM(NSUInteger, MGLAnnotationVerticalAlignment) { /** Aligns the annotation vertically in the center of the map view. */ @@ -404,6 +413,17 @@ IB_DESIGNABLE */ @property(nonatomic, getter=isPitchEnabled) BOOL pitchEnabled; +/** + A floating-point value that determines the rate of deceleration after the user + lifts their finger. + + Your application can use the `MGLMapViewDecelerationRateNormal` and + `MGLMapViewDecelerationRateFast` constants as reference points for reasonable + deceleration rates. `MGLMapViewDecelerationRateImmediate` can be used to + disable deceleration entirely. + */ +@property(nonatomic) CGFloat decelerationRate; + #pragma mark Manipulating the Viewpoint /** diff --git a/platform/ios/src/MGLMapView.mm b/platform/ios/src/MGLMapView.mm index 23aa9a2a1..78ee518d2 100644 --- a/platform/ios/src/MGLMapView.mm +++ b/platform/ios/src/MGLMapView.mm @@ -51,6 +51,10 @@ class MBGLView; class MGLAnnotationContext; +const CGFloat MGLMapViewDecelerationRateNormal = UIScrollViewDecelerationRateNormal; +const CGFloat MGLMapViewDecelerationRateFast = UIScrollViewDecelerationRateFast; +const CGFloat MGLMapViewDecelerationRateImmediate = 0.0; + /// Indicates the manner in which the map view is tracking the user location. typedef NS_ENUM(NSUInteger, MGLUserTrackingState) { /// The map view is not yet tracking the user location. @@ -500,6 +504,8 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) [self addGestureRecognizer:_twoFingerDrag]; _pitchEnabled = YES; + _decelerationRate = MGLMapViewDecelerationRateNormal; + if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { _quickZoom = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleQuickZoomGesture:)]; @@ -1202,18 +1208,17 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) else if (pan.state == UIGestureRecognizerStateEnded || pan.state == UIGestureRecognizerStateCancelled) { CGPoint velocity = [pan velocityInView:pan.view]; - if (sqrtf(velocity.x * velocity.x + velocity.y * velocity.y) < 100) + if (self.decelerationRate == MGLMapViewDecelerationRateImmediate || sqrtf(velocity.x * velocity.x + velocity.y * velocity.y) < 100) { // Not enough velocity to overcome friction velocity = CGPointZero; } - NSTimeInterval duration = UIScrollViewDecelerationRateNormal; BOOL drift = ! CGPointEqualToPoint(velocity, CGPointZero); if (drift) { - CGPoint offset = CGPointMake(velocity.x * duration / 4, velocity.y * duration / 4); - _mbglMap->moveBy({ offset.x, offset.y }, MGLDurationInSeconds(duration)); + CGPoint offset = CGPointMake(velocity.x * self.decelerationRate / 4, velocity.y * self.decelerationRate / 4); + _mbglMap->moveBy({ offset.x, offset.y }, MGLDurationInSeconds(self.decelerationRate)); } [self notifyGestureDidEndWithDrift:drift]; @@ -1283,7 +1288,7 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) velocity = 0; } - NSTimeInterval duration = velocity > 0 ? 1 : 0.25; + NSTimeInterval duration = (velocity > 0 ? 1 : 0.25) * self.decelerationRate; CGFloat scale = self.scale * pinch.scale; CGFloat newScale = scale; @@ -1301,12 +1306,12 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) velocity = 0; } - if (velocity) + if (velocity && duration) { _mbglMap->setScale(newScale, mbgl::ScreenCoordinate { centerPoint.x, centerPoint.y }, MGLDurationInSeconds(duration)); } - [self notifyGestureDidEndWithDrift:velocity]; + [self notifyGestureDidEndWithDrift:velocity && duration]; [self unrotateIfNeededForGesture]; } @@ -1355,21 +1360,20 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration) else if (rotate.state == UIGestureRecognizerStateEnded || rotate.state == UIGestureRecognizerStateCancelled) { CGFloat velocity = rotate.velocity; - - if (fabs(velocity) > 3) + CGFloat decelerationRate = self.decelerationRate; + if (decelerationRate != MGLMapViewDecelerationRateImmediate && fabs(velocity) > 3) { CGFloat radians = self.angle + rotate.rotation; - NSTimeInterval duration = UIScrollViewDecelerationRateNormal; - CGFloat newRadians = radians + velocity * duration * 0.1; + CGFloat newRadians = radians + velocity * decelerationRate * 0.1; CGFloat newDegrees = MGLDegreesFromRadians(newRadians) * -1; - _mbglMap->setBearing(newDegrees, mbgl::ScreenCoordinate { centerPoint.x, centerPoint.y }, MGLDurationInSeconds(duration)); + _mbglMap->setBearing(newDegrees, mbgl::ScreenCoordinate { centerPoint.x, centerPoint.y }, MGLDurationInSeconds(decelerationRate)); [self notifyGestureDidEndWithDrift:YES]; __weak MGLMapView *weakSelf = self; - [self animateWithDelay:duration animations:^ + [self animateWithDelay:decelerationRate animations:^ { [weakSelf unrotateIfNeededForGesture]; }]; From bacf8eee70f3c1a2075702e8ef82b6f1204d671e Mon Sep 17 00:00:00 2001 From: Jason Wray Date: Thu, 9 Jun 2016 17:47:41 -0700 Subject: [PATCH 09/30] [ios, macos] Add Mapbox Jazzy theme - Based on Jazzy's "full width" theme. - Add ellipsis to overlong items in navigation menu. - Set minimum width for navigation menu. - Use Open Sans font face. - Inline GitHub header icon as SVG. - Center images by default. - Add GitHub SVG icon to 'show on github' link. - Wrap overlong method names on class pages. --- .../docs/theme/assets/css/highlight.css.scss | 88 +++ .../docs/theme/assets/css/jazzy.css.scss | 600 ++++++++++++++++++ .../docs/theme/assets/fonts/opensans-bold.eot | Bin 0 -> 24122 bytes .../theme/assets/fonts/opensans-bold.woff | Bin 0 -> 28584 bytes .../theme/assets/fonts/opensans-regular.eot | Bin 0 -> 23625 bytes .../theme/assets/fonts/opensans-regular.woff | Bin 0 -> 27964 bytes .../darwin/docs/theme/assets/img/carat.png | Bin 0 -> 274 bytes .../darwin/docs/theme/assets/img/dash.png | Bin 0 -> 1338 bytes .../darwin/docs/theme/assets/img/github.svg | 4 + .../darwin/docs/theme/assets/img/mapbox.svg | 21 + platform/darwin/docs/theme/assets/js/jazzy.js | 40 ++ .../darwin/docs/theme/assets/js/jquery.min.js | 4 + .../darwin/docs/theme/templates/doc.mustache | 53 ++ .../docs/theme/templates/footer.mustache | 3 + .../docs/theme/templates/header.mustache | 28 + .../darwin/docs/theme/templates/nav.mustache | 16 + .../docs/theme/templates/parameter.mustache | 12 + .../darwin/docs/theme/templates/task.mustache | 95 +++ .../docs/theme/templates/tasks.mustache | 9 + platform/ios/scripts/document.sh | 1 + platform/macos/docs/doc-README.md | 2 +- platform/macos/scripts/document.sh | 3 + 22 files changed, 978 insertions(+), 1 deletion(-) create mode 100644 platform/darwin/docs/theme/assets/css/highlight.css.scss create mode 100644 platform/darwin/docs/theme/assets/css/jazzy.css.scss create mode 100755 platform/darwin/docs/theme/assets/fonts/opensans-bold.eot create mode 100755 platform/darwin/docs/theme/assets/fonts/opensans-bold.woff create mode 100755 platform/darwin/docs/theme/assets/fonts/opensans-regular.eot create mode 100755 platform/darwin/docs/theme/assets/fonts/opensans-regular.woff create mode 100755 platform/darwin/docs/theme/assets/img/carat.png create mode 100755 platform/darwin/docs/theme/assets/img/dash.png create mode 100644 platform/darwin/docs/theme/assets/img/github.svg create mode 100644 platform/darwin/docs/theme/assets/img/mapbox.svg create mode 100755 platform/darwin/docs/theme/assets/js/jazzy.js create mode 100755 platform/darwin/docs/theme/assets/js/jquery.min.js create mode 100644 platform/darwin/docs/theme/templates/doc.mustache create mode 100644 platform/darwin/docs/theme/templates/footer.mustache create mode 100644 platform/darwin/docs/theme/templates/header.mustache create mode 100644 platform/darwin/docs/theme/templates/nav.mustache create mode 100644 platform/darwin/docs/theme/templates/parameter.mustache create mode 100644 platform/darwin/docs/theme/templates/task.mustache create mode 100644 platform/darwin/docs/theme/templates/tasks.mustache diff --git a/platform/darwin/docs/theme/assets/css/highlight.css.scss b/platform/darwin/docs/theme/assets/css/highlight.css.scss new file mode 100644 index 000000000..231e0c316 --- /dev/null +++ b/platform/darwin/docs/theme/assets/css/highlight.css.scss @@ -0,0 +1,88 @@ +/* Rouge Syntax Highlighting, Mapbox Base style +------------------------------------------------------- */ +.highlight .hll { background-color:#ffffcc } + +/* No Styling, Just Default: + .highlight .nx, Normal Text + .highlight .ni Name.Entity + .highlight .nf Name.Entity + .highlight .no Name.Constant +*/ + +/* Comments */ +.highlight .o, /* Operator */ +.highlight .c, +.highlight .c1, +.highlight .cp, +.highlight .cm { color:#999; font-style:italic; } +.highlight .err { color:#F00000; background-color:#F0A0A0 } /* Error */ + +.highlight .k { color:#404040; font-weight:bold; } /* Keyword */ +.highlight .css .k { font-weight:normal; } + +.highlight .cs { color:#404040; font-style:italic; } /* Comment.Special */ +.highlight .gd { color:#A00000; } /* Generic.Deleted */ +.highlight .ge { font-style:italic } /* Generic.Emph */ +.highlight .gs { font-weight:bold; } /* Generic.Strong */ +.highlight .gr { color:#FF0000; } /* Generic.Error */ +.highlight .gh { color:#000080; } /* Generic.Heading */ +.highlight .gi { color:#00A000; } /* Generic.Inserted */ +.highlight .go { color:#808080; } /* Generic.Output */ +.highlight .gp { color:#c65d09; } /* Generic.Prompt */ +.highlight .gu { color:#800080; } /* Generic.Subheading */ +.highlight .gt { color:#0040D0; } /* Generic.Traceback */ +.highlight .kc { color:#D24400; } /* Keyword.Constant */ + +/* Keyword.Declaration + * Keyword.Namespace + * Keyword.Reserved */ +.highlight .kd, +.highlight .kn, +.highlight .kr, +.highlight .nt { color:#0B5A91; } /* Name.Tag */ + +/* Literal.Number */ +.highlight .mh, +.highlight .mo, +.highlight .il, +.highlight .mi, +.highlight .kt, +.highlight .mf, +.highlight .nl, /* Name.Label */ +.highlight .na, /* Name.Attribute */ +.highlight .m { color:#0C9DC2; } /* Keyword.Type */ +.highlight .kp { color:#0080f0; } /* Keyword.Pseudo */ + +.highlight .nc { color:#DF6637; } /* Name.Class */ +.highlight .css .nc { color:#75A21C; } + +.highlight .nd { color:#505050; } /* Name.Decorator */ +.highlight .ne { color:#F00000; } /* Name.Exception */ + +.highlight .nn { color:#0e84b5; } /* Name.Namespace */ + +.highlight .nf, /* Name.Function */ +.highlight .nv { color:#003060; } /* Name.Variable */ +.highlight .ow { color:#404040; } /* Operator.Word */ +.highlight .w { color:#bbbbbb; } /* Text.Whitespace */ +.highlight .sc { color:#8080F0; } /* Literal.String.Char */ +.highlight .sd { color:#D04020; } /* Literal.String.Doc */ + +/* Name.Builtin / Name.Builtin.Pseudo */ +.highlight .bp, +.highlight .nb { color:#007020; } + +/* Literal.String */ +.highlight .s, +.highlight .sh, +.highlight .sb, +.highlight .s1, +.highlight .sr, +.highlight .se { color:#75A21C; } + +.highlight .si { background-color:#eee; } /* Literal.String.Interpol */ +.highlight .p { color:#444444; } /* Normal Text */ +.highlight .ss { color:#f0c080; } /* Literal.String.Symbol */ +.highlight .vc { color:#c0c0f0; } /* Name.Variable.Class */ +.highlight .vg { color:#f08040; } /* Name.Variable.Global */ +.highlight .vi { color:#a0a0f0; } /* Name.Variable.Instance */ diff --git a/platform/darwin/docs/theme/assets/css/jazzy.css.scss b/platform/darwin/docs/theme/assets/css/jazzy.css.scss new file mode 100644 index 000000000..99eebd057 --- /dev/null +++ b/platform/darwin/docs/theme/assets/css/jazzy.css.scss @@ -0,0 +1,600 @@ +// =========================================================================== +// +// Variables +// +// =========================================================================== + +$body_background: #fff; +$body_font: 15px/25px 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif; +$text_color: #333; +$gray_border: 1px solid #ddd; + +$quote_color: #858585; +$quote_border: 4px solid #e5e5e5; + +$link_color: #3887BE; +$link_hover_color: #63b6e5; + +$table_alt_row_color: #fbfbfb; +$table_border_color: #ddd; + +$code_bg_color: #f6f6f6; +$code_font: Menlo, Bitstream Vera Sans Mono, Monaco, Consolas, monospacee; + + +// ----- Layout + +$gutter: 16px; +$navigation_min_width: 175px; +$navigation_max_width: 300px; + + +// ----- Header + +$header_weight: normal; +$header_color: #555; +$header_font: 'Open Sans Bold', 'Helvetica Neue', Helvetica, Arial, sans-serif; +$header_bg_color: #3887be; +$header_link_color: #fff; +$doc_coverage_color: #999; + + +// ----- Breadcrumbs + +$breadcrumbs_bg_color: #fbfbfb; +$breadcrumbs_border_color: #ddd; + + +// ----- Navigation + +$navigation_max_width: 300px; +$navigation_bg_color: #fbfbfb; +$navigation_border_color: #ddd; +$navigation_title_color: rgba(0, 0, 0, 0.5); +$navigation_task_color: $link_color; + +$section_name_color: $navigation_title_color; + +// ----- Content + +$declaration_title_language_color: #4183c4; +$declaration_language_border: 5px solid #cde9f4; +$declaration_bg_color: #fdfeff; +$declaration_border_color: #ddd; + +$aside_color: #aaa; +$aside_border: 5px solid lighten($aside_color, 20%); +$aside_warning_color: #ff0000; +$aside_warning_border: 5px solid lighten($aside_warning_color, 20%); + +// ----- Footer + +$footer_text_color: #888; +$footer_link_color: #555; + + +// =========================================================================== +// +// Base +// +// =========================================================================== + +*, *:before, *:after { + box-sizing: inherit; +} + +body { + margin: 0; + background: $body_background; + color: $text_color; + font: $body_font; + letter-spacing: .2px; + -webkit-font-smoothing: antialiased; + box-sizing: border-box; +} + +// ----- Block elements + +@mixin heading($font-size: 1rem, $margin: 1.275em 0 0.85em) { + font-family: $header_font; + font-size: $font-size; + font-weight: $header_weight; + color: $header_color; + margin: $margin; +} + +h1 { + @include heading(2.0rem, 0.5em 0 0.6em); +} + +h1 a { + color: $header_color; +} + +h2 { + @include heading(1.5rem, 1em 0 0.6em); +} + +h3 { + @include heading(1rem, 1em 0 0.3em); +} + +h4 { + @include heading(1rem); +} + +h5, h6 { + @include heading; +} + +p { + margin: 0 0 1em; +} + +ul, ol { + padding: 0 0 0 2em; + margin: 0 0 0.85em; +} + +blockquote { + margin: 0 0 0.85em; + padding: 0 15px; + color: $quote_color; + border-left: $quote_border; +} + + +// ----- Inline elements + +img { + max-width: 100%; +} + +a { + color: $link_color; + text-decoration: none; + + &:hover, &:focus { + color: $link_hover_color; + } + + &:focus { + box-shadow:inset 0 0 0 1px rgba(0,0,0,0.05); + } +} + +// ----- Tables + +table { + background: $body_background; + width: 100%; + border-collapse: collapse; + border-spacing: 0; + overflow: auto; + margin: 0 0 0.85em; +} + +tr { + &:nth-child(2n) { + background-color: $table_alt_row_color; + } +} + +th, td { + padding: 6px 13px; + border: 1px solid $table_border_color; +} + + +// ----- Code + +pre { + margin: 0 0 1.275em; + padding: .85em 1em; + overflow: auto; + background: $code_bg_color; + font-family: $code_font; + border-radius: 4px; +} + +code { + font-family: $code_font; + font-size: .85em; + line-height: .85em; +} + +p, li { + > code { + background: $code_bg_color; + padding: .2em; + border-radius: 4px; + &:before, &:after { + letter-spacing: -.35em; + content: "\00a0"; + } + } +} + +pre code { + padding: 0; + white-space: pre; +} + + +// =========================================================================== +// +// Layout +// +// =========================================================================== + +.content-wrapper { + display: flex; + flex-direction: column; + @media (min-width: 768px) { + flex-direction: row; + } +} + + +// =========================================================================== +// +// Header +// +// =========================================================================== + +.header { + display: flex; + padding: $gutter/2; + font-size: 0.875em; + background: $header_bg_color; + color: $doc_coverage_color; +} + +.header-col { + margin: 0; + padding: 0 $gutter/2 +} + +.header-col--primary { + flex: 1; +} + +.header-link { + color: $header_link_color; +} + +.header-image, .header-icon { + padding-right: 6px; + vertical-align: -4px; + height: 16px; +} + +// =========================================================================== +// +// Breadcrumbs +// +// =========================================================================== + +.breadcrumbs { + font-size: 0.875em; + padding: $gutter / 2 $gutter; + margin: 0; + background: $breadcrumbs_bg_color; + border-bottom: 1px solid $breadcrumbs_border_color; +} + +.carat { + height: 10px; + margin: 0 5px; +} + + +// =========================================================================== +// +// Navigation +// +// =========================================================================== + +.navigation { + order: 2; + + @media (min-width: 768px) { + order: 1; + width: 25%; + min-width: $navigation_min_width; + max-width: $navigation_max_width; + padding-bottom: $gutter*4; + font-size: 12px; + line-height: 20px; + overflow: hidden; + background: $navigation_bg_color; + border-right: 1px solid $navigation_border_color; + } +} + +.nav-groups { + list-style-type: none; + padding-left: 0; +} + +.nav-group-name { + border-bottom: 1px solid $navigation_border_color; + padding: $gutter/2 0 $gutter/2 $gutter; +} + +.nav-group-name-link { + font-family: $header_font; + color: $navigation_title_color; +} + +.nav-group-tasks { + margin: $gutter/2 0; + padding: 0 0 0 $gutter/2; +} + +.nav-group-task { + font-size: 1em; + list-style-type: none; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + color: $navigation_task_color; +} + +.nav-group-task-link { + color: $navigation_task_color; +} + +// =========================================================================== +// +// Content +// +// =========================================================================== + +.main-content { + order: 1; + @media (min-width: 768px) { + order: 2; + flex: 1; + padding-bottom: 60px; + max-width: 80%; + } +} + +.section { + padding: 0 $gutter * 2; + border-bottom: 1px solid $navigation_border_color; +} + +.section-content { + margin: 0 auto; + padding: $gutter 0; +} + +.section-content img { + margin: 0 auto; + display: block; +} + +.section-name { + color: $section_name_color; + display: block; +} + +.declaration .highlight { + overflow-x: initial; // This allows the scrollbar to show up inside declarations + padding: $gutter/2 0; + margin: 0; + background-color: transparent; + border: none; +} + +.task-group-section { + border-top: $gray_border; +} + +.task-group { + padding-top: 0px; +} + +.task-name-container { + a[name] { + &:before { + content: ""; + display: block; + } + } +} + +.item-container { } + +.item { + padding-top: 8px; + width: 100%; + list-style-type: none; + + a[name] { + &:before { + content: ""; + display: block; + } + } + + .token { + padding-left: 3px; + margin-left: 0px; + font-size: 1em; + word-break: break-all; + } + + .declaration-note { + font-size: .85em; + color: #808080; + font-style: italic; + } +} + +.pointer-container { + border-bottom: $gray_border; + left: -23px; + padding-bottom: 13px; + position: relative; + width: 110%; +} + +.pointer { + left: 21px; + top: 7px; + display: block; + position: absolute; + width: 12px; + height: 12px; + border-left: 1px solid $declaration_border_color; + border-top: 1px solid $declaration_border_color; + background: $declaration_bg_color; + transform: rotate(45deg); +} + +.height-container { + display: none; + position: relative; + width: 100%; + overflow: hidden; + .section { + background: $declaration_bg_color; + border: $gray_border; + border-top-width: 0; + padding: $gutter / 1.5 $gutter; + } +} + +.aside, .language { + padding: 6px 12px; + margin: 12px 0; + border-left: $aside_border; + overflow-y: hidden; + .aside-title { + font-size: 9px; + letter-spacing: 2px; + text-transform: uppercase; + padding-bottom: 0; + margin: 0; + color: $aside_color; + -webkit-user-select: none; + } + p:last-child { + margin-bottom: 0; + } +} + +.language { + border-left: $declaration_language_border; + .aside-title { + color: $declaration_title_language_color; + } +} + +.aside-warning { + border-left: $aside_warning_border; + .aside-title { + color: $aside_warning_color; + } +} + +.graybox { + border-collapse: collapse; + width: 100%; + p { + margin: 0; + word-break: break-word; + min-width: 50px; + } + td { + border: $gray_border; + padding: 5px 25px 5px 10px; + vertical-align: middle; + } + tr td:first-of-type { + text-align: right; + padding: 7px; + vertical-align: top; + word-break: normal; + width: 40px; + } +} + +.slightly-smaller { + font-size: 0.9em; +} + +.show-on-github { + font-variant: small-caps; +} + +.show-on-github-icon { + width: 16px; + display: inline-block !important; + vertical-align: -3px; + padding-left: 2px; +} + + +// =========================================================================== +// +// Footer +// +// =========================================================================== + +.footer { + border-top: 1px $navigation_border_color solid; + padding: $gutter/2 $gutter; + color: $footer_text_color; + font-size: 0.8em; + + p { + display: inline; + } + + a { + color: $footer_link_color; + } +} + + +// =========================================================================== +// +// Dash +// +// =========================================================================== + +html.dash { + + .header, .breadcrumbs, .navigation { + display: none; + } + + .height-container { + display: block; + } +} + + +// =========================================================================== +// +// Fonts +// +// =========================================================================== + +@font-face { + font-family:'Open Sans'; + src:url('../fonts/opensans-regular.eot'); + src:url('../fonts/opensans-regular.eot#iefix') format('embedded-opentype'), + url('../fonts/opensans-regular.woff') format('woff'); + } + +@font-face { + font-family:'Open Sans Bold'; + src:url('../fonts/opensans-bold.eot'); + src:url('../fonts/opensans-bold.eot#iefix') format('embedded-opentype'), + url('../fonts/opensans-bold.woff') format('woff'); + } diff --git a/platform/darwin/docs/theme/assets/fonts/opensans-bold.eot b/platform/darwin/docs/theme/assets/fonts/opensans-bold.eot new file mode 100755 index 0000000000000000000000000000000000000000..7d99f603d7c1a39a4454fa05af78e1413a399959 GIT binary patch literal 24122 zcmZsBRZtvE7wj%9usDl53oP!g!QDN$y9Esz+}+*XgL`mycL)}o0D)j3-b*f)Rz#OVLi z|5t@T0Q7%Y$50#bKm30S8=wks0ayW?|1)U<%>G07{|sP&1mF|E5n%b>nh>D#pYHY_ zZ}%VfKOYBx^}osfpGNxs>4yGay#RoOrmWikyCVPq5AcTpc-a8FJOFlV?Ah~}32*(6 zlePw~3W45K7Ts>lHq6pbv`+|S>!{pD9KA~1`KcRZo}IQnH2cLt+w%m(sNF-d8%iVwC`#eJre zlk1;vqoMe?7rU4=vI!`_BeRXK(Fyxq5_bLy{;g0Ck7|d12NY-Nal9~c`=&)~<&wXb z^QB)`@w0Fn+`H{kHC)vC>Jtd?Qi5e6bs;$s#zSDat7PO`g-}9d-Q$1|DS6RC{#n~Y z=#9yg`<^Q#aXTvn-psFuz05MP$xe|IV*{h6EQs#Xp(*m~qwQ$6AU_{=C9URc-^q*L zj>Yhcx?FV9jPi=SMZJ0+fZSPjZTy4Qq6Wnr!c<0cN{+s+7SCjlK!Yci8?T@yxfH~w z$!`LAPbFTy41-6~oazT$N*O0He*a7KhOjhm4Ha%R%1?CcC}Pf;61j^c6$JzmX*NSf z4D4up1FdJq&IQ6HB~B(t72ai|_5osp8q5-lnNbSXG{Bs>Z_dBC5I6pEK%

mG&ev zi;O2QDPRWEDb$N65@&vsWHU5o`1VqK7*BF=z$&c={)Oy@>=r;8K|8bGtsw4&gpI)r z2f|peV%B8b*S)p)h0d~O$vkO%=eHWRW=xj$O;@-{V$@gG$w{uJTrOP2mx4IyvFFAG zy+Pf|SD{wscOpJ-o0nD(jHKEu5h@Hhw2AJUN2+3>OWHGjnR3l4xVXrv*<4UiuwBe5 z4zN0`>lMokn(fK9Ip`6*#q*rE$Ok<1^}Pm~{DIfLX{8XH*$m?KJo7(1!%=6c__z^&NHG*t(ZRI{d^9_ zBJulrOyjC;%7gx%GRtGz$-nDA+_Ts!3Z2Z(smm2;53?2Ze0G;AtuNgnD|}-=X<28%G)iu8i{b=@;&E?-DE z8?pOOl_qTLQ7^b>$iJdsYBqm&yHSUWa^te6QYX0y(M;)+ldB+`kH>evJ1(6Hs6)+n z8>LS+Uy&=3UR4+HE=Hhd6xT<^T1BX075BAB8i;^#Qf8y0inYqwC-G8t*2?{9lUk4Yc zJu=ljGtEAyM0*kVc;o1KM<)417Wsyn@`f~YzV(rt?or%-{r6F3;jbL)9a#2;jIFcN zDfkU9SWgFxfSighwnC`qvgLM$6%;{idvJVsO@4tvco@G}7zg(JNR}5-!=Vyfsp!Li7`Ss@v!&wL2hgT+1&lMemAiTmhCDPbrA}?T6H6)FBASP2++uedG zq=3-Dju=CvnbDmGOLOYdC^YZ{4#CG7R~y;DeL#Y}pu?3oYU3KrLRAaB1NX_`8q4rH zCq?1Al%PAHHluFD@ql&FA2tJ@v?lafjXneV61B3yi*T3tw#1YrLu31LSYtq_SVZuK zJBS8MD9z@M;=1^Giq&JGy zXUYC3V4#->gnw`aIgtRY_HSmeG?8Z7AJq|mmV)N z8JAJ+rWBS1zO(7A;fU!=2Zg$@NMH~cQrjNRD77kuT(>64a$SfeK*@>S?j|Iqh;!^y zxj{&%FRQxqh(X-IEM$KuG^HqLNCey!jB7@hL8J6jbZ`Uv)8IiO44S&N%0NdA)CEvR zFMA!rD^nH|8eu*O$WTi;$h5kg#|~i%-~WtRNW*8g9@D!odMAIDVgEh&2Q1t)%pF>O z;jsLigo8ItnuhH}wSy>2`Aep#XxyI!|IBmX>D$IUXK{=5z_C;3m)?EJ@@)KDPFohV zSX;FGrq?!L;Xg0{c-cYpG%eL?Uo;7RS+j8Ndq>uBKVMrL&9Lf}%0)EBO32&MDB326 zM2uo6cIryVD-xy#vstl!z_uRy&vV~WE>w;RtvkHdb8~c7Rn!N>^ueIAx&SgG5rJl^ z9?pD@pwAMgAgj+4kY0!{z0%NNppK{(nh-=>R^u8;L6c)La30bvmTam7#{froc zRoi2MJz~-3QB?>PWjQFKcDtqzAf(Y>AYye;qN#Mqkj$5mT1+G)M`fqyjwz+YkWiL& zqaK;_a4`p>qW&5^h7kyu|2QF(Qme*kq&LCK1!Owy$ec5)>uP@>(JXJ)`08+xO9FI3 zNA8Pv%%v1`2MVjfa%y3;$t`@BOm2ryfG^>X z!Q#nH^bRr*GYNc8fgFBH4-6s(OoiQ1Za)=Tc%+buW%|FrVYo5V!2?Aq@6huwQKd#7 z(r2xu`oas>Yj0XEU{TjcDP_DC1T`Jxvq*`w@TzDusLqLc z3E@~!ke><~>%Bz|$H(-3f9VG`_)`9ilU|HsvplrmQ$gz7E7hYaWzGR5{rEGM8GSq< z3sc&ir3}v0EU9#y=W?)GTc4heo&dc)B?bsj8Uh~3mns(5Knrtvqadk072Ii-OMjSR zx!mO=L(l12gL#m#A>l?=b!!Qz*-o{8+8BP&OI1Izl*8ZSfbnW}GGUpur&jUB#V(`H z=tKy@B?Fd|-yRdhEq4coaCJPR&oCS|7?;ww0#^xVFpBXFaN(THzNzuqN&0`M()1B5 zQwSGtvUZ37Ty58n0P}W3Qdb6gU96748(Fj z<+kWkgU=#gfBuM9yU%L+nt|thqPbM+6BAx;*%%`%*dxWk79OWR7saC*otoJsH0785 zp;J1CC{Eqzj2vjbyGFb;*EC91;Y55#YnK;G6D}q(#;FtfIiowdCKG9n75EX5-*Pn&l+}JhU@NJIH#+8=tIqE1ScOm zdc0dSe>O3-27qk$TZHL}SQr)i{=O+aWwhq@lq0(e*f^Gj++jA-r#kYCB;|nl$&6a6 z$!p9ip_Y+D^UYCcnN!zBwpM|Fqr^f{;*m;tL_m4FfPgFdS)YebKxfCn$XCOS-F9|e zc~o>!cz5K8aAI@gI&q9=N~B9|OButCgV*9|Wr!XrUku!Z=7derYb z`l795lqhwkjBbM0baZ%gJkRX30|S6xIM{)Kv&-(g7D4Q9YW^}Yy@A|Y=dD=4U8&d{ z={#_!X?9)3BNxx7l}h}cozE(u@P0llAcPBKIee|A8n!6cpp4TK=? z7w)E{noO*29yrpsRS-NHGx+!7_94q>WwDUctE()D@CGfhR5#0YGpoaB5m1BJkrr>s-sv8;!E8?YJqqiy`Zdh68-;yu>Xht`Q%to+D212t87i5zEv^k)MBX2OW zVZlMQe|YhK z7@+i2vDivEN$Vev$|oUUW4OVw7f#?n?OXJ@!c|JAJ$V4gIp{KL<7_YUeo{ zmh8wpXhKq1?(yA8iBC-ximANi%`cKN!7B_uBgp&~C*d6M86g<}mTq^1u5CA-Zd70M z!B75HUlJ#rmjdC~fCyw@j>O|*>)m33Vo6~JcgJJ%%{MsYoO`KJ=JgbVkF5X>dQ!_L z`6XWa?IkGn-4;0g>~}_RMc45;INZfH5Ob+bDipQ|P2BuZl`2)!oY<`2qH-!9Gw_dX zun;89rrlgH3YKVla#17hHLV5Zl{;dNakc0LL+!Y>$CWC? z`hhH4r*F32`-dzPE-|%G0Bz6jE`zt+Q#CwD6{=PXIPC`>9G@9pw z!rJ5@o<-s|{)UU7(hz|SL0;EN4uv9gG2kWv;uH|~NW$8JXwk!ppYTLV#kjlwK2>XH zi$|ORNm5RLuxJpBQ0oh7~vy9yv2?(iD zG2gtQ>;`-Q>f5-qV2S00vA9+yYQaNDM}%94Imh5kaw=lqSCQ{w;_K$9QB%XKb9{IQ z6K?Lwf-etKoevbN@xAL@00j-rhcn?HqIuVhVtYi#VZ}lEWciw>WvX&DU5EVt&i_`o z^xw`u3$cKZ(coJ#xg@!0bfUDCI`EiT&0#Bu z<=g8EA9_1BzApHnt+*W^20IkO{3%*~0H)aM{x+14f?Q%UFPapAJ(GPvZ3{FV+eG)B zOJK*Tu2X`0W}2#A#Ch0S3#Vj(k!J|)(T`=-G}78&_y&4FqP-4kTz zUIsc-5fdhsxo3OScUf$crlkm!Z-l!vDLD&10;endelMs6NQbtK_VO9lP#bURZM`1` z?0F519jzC~GIp?mxr7_M$DY>b8!oM}lQL#TEJ%1wMSASH($@iKRsOyP&0GpbiP%f! zlCJ=1{!CJoitfCZt<4bziN!;uAIxg%QnU4t(sCI0w7 zeK-!0Pl>Cdts>5J^;e(v&ckQU-s(ZT~8>JljX%ks4M zFa3E>KmNgCK&!0Gl5wF^VeuOUm=G_tyo@h|t59gJyfczVn5wJS%#-H&#HjuE>bc!` z-wSovyB!UQpw?_iBOHZ(96%58frFV_XR{P34GgYR7A}a?jRmo~DZ;OOZ=UzFm12kj(0BP zMlzs@6ZckX9WK`Ih3+5B&&HAiV5D-5A*??c(h7);D=$UuE`b|GBGfWZcJ=F2YfeW_ zo#bKAVy&SR zO-04Z&5czouNdfFNpA#n%5Eg7NqN{9p9SM)@TDvN`$Bf{96myRB2)!VB>dzjkWhQ= zF4x=-3nj3ue#Jr-6{pC;m;HmmRTZvzh?-Q(JR~s+w@!dy;T-DsTNlRG{Uks7BZzz; zL4|5auftOoBV`4|{x|h*ba*RIoy8$?gxMFS8$&|@U3Ah>EfTkcxeyqu#wnNhaGeD= zk**56_1x(8z}K|;7HviN0mdbrHmtp}TilB6XnAV~j8zE>V+(^3lwXNMc5`0%=bc@xRP z<;T%M!7Ba&7VZzSHC+%V+{(p!GXn5sI{ z{^RFA-Yq^A)5^5k07)oj1|E^1sSqIV=h8ty20cuX^BzF3i|4UQ|3hbb^~6T9c>6wy zC4)9lY*J1eluCd#On?i<7fFgRJ{rA4wAj0Xh>R@^QE{0+*1D@WVPy#eRKy5VIf?crnRKV`^@ z!4K8_cN;&*TA=guIs1!hTUZ8L>}s~UY{MFa`r%hcqK_sB5Bk<2KEcD8DKgQ2RTA?W z>a2=drf$@})(^UDz8^>EIi8u(NZ$C7T4NWFQjBPt347Cs*(!1DU8^;hEaoFOC$g8w zHXv-5g8t-3JzpcX>8Xk@nLHSz>E>l#bgp+#r(e&PFMx%nqN*%?*wBQz24rHF1HZJXO(~NpAy_0MCo>6A_db z7}(wHtLa&mZjhEI+QimtCy)(lDPx)UVQtOs;Ly{m3T*hA?4eao+$%#Txd+* zny=|I=1j^y{=p}w$(7*F-}70YP?s`eS&rkY7 zx4cvv{A);|LQE>=k!IT^$|Y-WRbvDT4u2v8p`2=LexPxFwNs>8f)OB25u1(G`=6xA zR~2uq5fj1Dj$?D0nN~R$$BV;YU+y7Uz}!wrfO)amSAm^2jiEyf3uy)>TizFG$!eL8 zWVdiUAHPd3NF8b=W8nf~tRma6tAG$61(Ar8ci$;@U(cD{FAUD@1)VW2vQ)7J{KW7D zg-|%s{0c&s^w`1h3?wkY*QxF-LG5S^h^sLQ+v8$FF9V}?k_nn_lsUGk43bOJG z>oqNCDWcg-#4=hi+mqVqTuLS5yhOaY#ze%O67-}MC}+itsu64D`IvF>PQu{&<7aNB zJ}Ykiai$iTeNCa-EVQO-9g^}kvL)w9n<(F;+eh|$O}fBhdGsU$OBocT2b%BI_hB0= z_Xhsr!ftVoA#9whKB`7De-x{`^y=Xs(-*GPQ=#;WVsl}ojK|x$DVAmAPVS!q> z`)V~nr|RijwlMCWtI_hrqV66TzbG_7sQ(Jme(cWXvZ`i)H4~&RDHF zk?1eTYismK{6UDz6|@d2R=ly|tV{_3=d`6f2QkZ5MXJcB(J14tVV1HoqScjWcxDK; z?YbtgOMl~gj5cpo@{kll%fyWd4@7nR%2#7rZ8&B;M7m^-JX}GiL+wKUyc&gHB&u+i z+Ejq8NypY(rS(qI>L~&a#*8vs32!$}7D_)uzw2l%iS;aQZFSnWD#PJiu6DD9%e1kq zO<$Cf+ByS&tkL*`UR^HYfnl8)|jlKbYPm+8xaywb6(b6*e9 zVdWz-&6%?R(C1`~dFZy|II)Wm61@OxWv={J<@0lItAzDgr-uc=*b~jkxB2+lYe_9? zBsOdTwtuP@HgW`sSK)VLSww*Dr#^Cw?s1eTTG=Rg28$&UDq@J=n{TW!1bXBJe1*;{G9A9|^GUZ39SW-H%HU!=DMLmJ?}cxy=0)ycD0cL=saCsW_A z8X*E26r#4&ncgu63Kt({rS??c-#6N3yinZifJoh-6gEZBA(ry;Z-_e06Ue|L_}k2d z6efzdzcCNYtEdoU_N0L^M^8@VhSav>k~YLpn(y#XG*0}LtQ<5_|8@?G#rqk;0es|a zdsg+cCViTc`q8s=85=AQ)2R1v2xNvvhWi~OBh~ta$!_t4^ex0n1T#`{<^!7KLu{9M zb&(_10ayX5>-r0mH3sJ!#u~czVlvHcJY;G*ZLUhO6Mpzt5IIH20#?GCI>}_elYP}L zRp=Q;#n}u^azF!QR_W*86yZ0(!Vkc?eP1X1l((|-8Ftwz0=Oz7ZyODU=65X6V97WTZ~CJZrYN- zJ`2;ycmnmqk1&gbnDVDDWkrm?r9-j1wEq2rn??Re%0=x?&---7!>=Ha%uDrrM_+q@ zKNi+fl?I zLGv*NI0d1qiy_)>Ipg1kl9Q(63t$vtLAScDW6Dk8liub1&;Vlig|Xdt3I+OPwWeo5aI5c_BtUiUqj2r9HL~b7h7zFEtNc+!L9sP2sgU8X# ziza?@PD{rTePv9g)B*Qn_yPtDLq>$Oddj(FWPFt)c9H{dAvjs^BZgVgiq`m4!xCp2iv+!OujFSDfUmEA z8Z6FILW?8)7rrpfSD5pNi6QWs@Ya6n+FBosF;!SSx{>u1O4cTs>J#$B`j#Bp(rxkL zcJgAqytb8lTdC7_X=4j8)endNV+Rmsf60I!b-RJOu-*r8s9*RBPfl+-=U(Xxk;6v4 z=UaAVR1NOYdZimDcgs!QSxA!6V!7r=aQ?O*GEm&dQ}v`*755rNhR#rZw9kBIvx)EO z463+6td$K-Gpa^idEMT;jtS;N%?i%h<41>kv_ceV{UdwJ~($E;$@FAB?W&dTEy1*W8Y?)_1Cl@AQZu=Vx zVMt}RC$jmo-15VQb`=6C$^{dkbrQ>D0Qrq9C`ypZJt+DK6HA%Q9Kq#TF7lPn5*UN^ zCfJ6XaEh?lQ&0EWHmHZ(M%B#b1riZhoMX+E`ZNKOYMFMbigCDI_TiqNBk>&j+9!KtB`BpO(3MgkVE~$e-_zi@}3M%>(Ef`S)X_QwxH?G zG3Bv?h*1wFvr;X`5x!Y^`~@Al45#t_m8i*Sa*Iq{M$xFfKcNg_{%fP$OBWXG)F$PDfK5jw4T>Ym~5ZG{V+!sVf1Ut1e93nht2b#~`oSE2h;x()!ML>D zjsA~DvJ13QA1%2;!LaV2>;QyM>(N~L`b_@GJB>_a@ccnJ&|hwh}66`vqoK8C+kTm%Krjr@7`i3Y~R|^3$EMVBK4_ zX-u@-gYT!576B?s2XB6p^Oa>IykFT6^KyZZNV`RY@`&zX11Zvbm%}Gy_xjz_AFgYw zmo{Amd*Sq`7DaH^v1})QfiW@hmFy8tB&_VI?D}YbtdFJ_OPv6*_PCa#Z(0AJ{tW}Exb;NBP4nB>G$ls%oYuE;bgJ*;E@eU&Uu?uX)* ze=W?#V#1#fEGdeZMW44v78x#jXJWRi%ak%9E;EnbOTwtS&)LGlU5M_fbQ&%gX+In= zr=2WwC?^Qx)xKSgSMH91PgU8lyrr9b68VjuFM;9aqV4Gn0mX#Z1Oq+YBr*sw;8* ztqT{Y;c-Q_q~s@FhNbrxu)j!P)*5dK7+O*?+2sh5;M`!~EDA7MeXY})+8fNTbfs{q zVd5;Fptkj1&bhA_q;5mg*lS7{Snok{ZVKx5wv1-AoCx9bB~jmneM7wO8Yh%_z9vydjyl3bbgKU8^N&F`rxu zj&!-g%hQv`%8qMH3-Ia<`C%?Lfp20N+`*2fzSM&TYPV@N^8Z|6IbXw3da_oFx_A-s zDs3kRQ#Y`sNXTzBbHu#efwn0!iLe{a0)9__#R?VS3O-sfa5ORCguhzx`ft@%O+Ae1 z`f8iLM`B9aER>)CBX08+Jk!-uqdwYn;d;K1c;_te1@9Q=i&d8xO}OP%5UDOi`ShKc zOoqpxGU@bN%u+&0WSaoGC9d^P82FTutrAhxB%14yJMYW09&=@wJ~f<>D*C)*0^riS zdbGQ4{3Sha6x%KcPWW3GsG7ZB+VV?S@SkDYd+Bxd9YxefBjP359!1Twjdp=j685>5v^G;h*6#;0bs9!fE_s3Kl1{hn+{SwlJcr>2spBSh zQo@~h$N(`BwRewC7*d+LDJ3VHtKNZroJZQLcM)mB`g!HX+)f63x3uPEu#$$tgW0kM zF5AD$0!A>N_>#I9TjvcS`w}O`NgM)?vwocxiXyz2CXPI6So;|DqH8TDR~LJVF#Voc zCqhA!`>9Bb!GXJ#<|VcP!Ac|*-Zt$$p@ZUHBEJF z1!9o#c?&Z&(rY6Fq=&j0dM`h^^}f5)E?XqGo*R#dTDm2#gpZ0&TOIj5ve=x)KTB)x zHAgUr7^}bMu|k)-c)yY2Nxyk~BZz)cM|@S~Q!s%I78-5Ndlhvt+j`4;_bTS(T(5R! z_qo6e2bj3!Q+(n4{uyij-sZf?X@* zy9XR(2zzcAlhBr_lHg)ij83E&7{~sG;y5Z_aIef$MPTPjh-UF~>5Tps*IVxO{Ys0W zJA!Og^pa5_{&ku_&&p1$7Yg#9JFxlQ)vCV#2a(djuzt>|#PKE0l@OeqDR^ea;FjQL zodmQO7>7#}``hRn#Y^=!r~@bKJMW@o(Q*)Q73xWfg$1cQKZeKLJ;==LSq`o)_W|{7 z%f%*}tPbtu_Sx3>cq8J?yai$DK5hoF;~FiwVu_vMakmclyHmz5;CRuOO}!wwa1SDo zoVf8G5ySf&CP4KI>3*Ub$EjvA?`g1N@wuAuw$Ex_bvtIie|7733XRmk87}T|?7dbg zlt7ewtcfuxjt&R+J^gXQLXXL_Hkv*2RFHn{OQ1GX9L2X?4CcCJ>!hibaFuvMq2eg^zX^Wy#`YR|`3-0j*2TP8OXU9CP81on+dlbU!xzt^Bf05a3EW(^$an|XH8*|Wd( zA=Fxw{{?+5K-QWY4FGi#GK6GltMncU^Zg+z#jki}*lCXm?K~;l4gtbTIkG?S} zxmN(?P7eXPHucckBgNK(Ws?gJb}Ek!#=>b5L;%f;HB@0gJvY^p?M#A1H$n^QXy&?h9XUSElDb-yN;IRoG^0+ zMn7)4ZepB_5kuo_gBv&o)bNrJ$`njnS~1irTFibKvH2E}SLj}A>cNWSWnuLFEm~HD zSHIt(ziv?IU}0OmpM#6?FtFrr?_xxdS>d?rK}4ZzCiz7h-Nr2jR#^n{tSCdkwIbi2 zhljIcimRp-ur0<#ToYCAB&<=@1BNTv)^vD+^d?DGROb7SFA<~*xatSKzgHGTDt~PR zf4ehaIIri69#6y}4_$Fn4K$9Os1op>m0a*Q#lvc(mln}WDB8_0qx90_7dW!*tWKq^ zf9B)wF)5QK0C8kMJu*Nlj}vwS zz9O?Y66*fSblfX_nsj;z{4- zK+ziU{VicfI}2zbDwlP+Nny>vimK*UVFBqF{<@Sy(Fzdmt?~*ntx_q0 z1UO;?_yv4kSE-=F2_Y(@+U&4u-a|`D(L3WIE8E8M;SS1p@g1yjb)P?l|AJJCqJrq1 ze_t;}u)PrqTOOnVQ#gxdeV+MD^mhwS&z?DJ^S5(+eoei$HjgzC*GiKOiFo|s zFPuJ~Y<^tTXXW*?Tkn^C>-x;j>or%4U2!!d#BobYlk$ZS(WV`?NC*0W5Tqii-@;Ho zNRnnQcWl7$slIXAzD_44NaX|GXhl>e+?aiq&_J2JRB77peigcNBrD+`zd9cm_mVr4 z-d`R}bC{~4>a+cIk&RQbpEV7>Oe1zdjSL#aTP9Bq4qkGho%a;t#HCa3^A8Ec zOXuJysyYqgq>flSTCLfFxHCLo1p!?mCMvf`J0lOtUp!I=G7wr+4W$t( zHr?)HEBu%;@Vk_SS;$1J9f8_J@yelfyGpr)w;V`uUv6j=X<9d5e3m=wJD}490&8Hw z*Ksev{VtZEHB6{DJeP8JCr8j|lwb`K7s$71Gmg88TZVoeh{bF8Y?3(2{F7u%_M6sO zUi|$*XPBl;pxS}aV6PO4X8*Y6oP8p_iCg!nB3I8?X*C*OC=bqc6k0wGOTH7RLPlDC zj{G87D)bA$@anhC(NbP1G{;5KwUnw7wQtv}q090tgS{0Z#?2i`Pr`50ux|DV+JIq{ z(3UfmuTpbK!I!KvqVQ;t@3uvGk0vGmMzZ3s#r+)A^i3ookEy-Gxi>*gzGO;~=n})y_?6NsI-p5Jnzm{z`@Iz6{Tr)LWBKEvZ(=W#Am}qjk zs@W6;vWC0^{aooHzV{3l-Lx~5d2lHrH9jAf@kugYG=S8k_fh$jV&Tx3-|RYZ;24`N z_-Ex8B+2D0ElUEO2%Fqnp2Ctfc*!3Tx@uBnGG}Z1g3~MM7la?Wu3NPx_>q}>k=|$3 z2pvea_hK18T2hNQ-)*)%12h-6Hn-R(2 zWB0^aFmbgjLa5cQ*bM){n_qjGedt>7B8}Uc^Q!u6>*VXLMuey?ygEb$fQU z$g2opeNY)*qW8?N&b7jjc<^}0@es!lUGm5Y?*Brkb^`roQyvvVyBc-6l<@^PJkB!$ zguMOIC)NaSe`bvbgeDgO06=)4DS+_<3)jzF{5Z<+-Ptu4{+W1Q3qt0ImF#Rj%J;FWd7mKV!i{USO_ zWV#cPrtNdixJ3*uk$Ssi9auq!ay=De7ehD}_ASUmwftXev63L99|8*Asy9}0xz4vN z)jC1Q3dB`WlLcTuJi)-RAEj-t` za1bsSM6!@=&PL*vL7z_>AT(@roMit13swE^LoJayYCzG+z_gYr#4s*IO$lkpXB$Ur zW*>sD3c5?SX$g8e((Rh#CbB*QjE0{xR1Y!YD3y~StRT@3;j^QMbpcVZ;{2@n8z*wc zAz~4wan%(~OhZJY*=Ux zN7$8mnK~&srmtR7BO3fm;~w%_$jSojuR)}KluLgz^DvVMxW_@GYaOX_AAF z`k6R8M@wIB(_~kC)Z23hrBNvB&iVqudK0I#p)O3nsmf?F{0>Z=F*7}jymRw zc@>9OCaExx;eTA<=DluShUfHJ#w&IFTcPXi`^lP$lZ{Tco~-b~*g4KIK$7-qiAFsQ z8>UACFo~)SFqPK8Kz%MEJ6EqxJtHqP^snfWVMIRz-wrm5ew89g4Gy zqCpKv#0zIerC!N!5Hm{(4G9oTlSc}EpnCFgzm*qF%`}#@xk|VeysgIY02cA2Dm5AF zmP3ymSVU3~xr*yfx}>9ny1mWKJ=p<;>CFJ7%l+F`wsiIXTRb!nX=$Q_W) zcM(_?E)}NVd|Iqz1LY7OQ3&h(Z85hK_kNp0ifjmbmY>mxN5&YD`z*Lbwk}Yo#o9OH z)Ly3f)u{x^c{sZy>5h7X+&EIj#Q;oxPLR2JHeGq2*I`3%c?c|G0i*GS;k)DzB=%raS ztUtDduf&rdxJn!s)OBW^PpqqQlr*FVj=UG65ih$~-g7VU{TBBr?IOR{#s9>iSK`wf zmSl+M*hlo$+X_}{=eRVUF0Wt1tibsBNbOhe9-2)L$qO%Ds`P=_h`J%#%tJW5n+4B0 z(y>d`sQC_UeuWWFt*@J|s=>F9`MDR`%-^ld(gCxkMBuCk#;4POWVnMg1d0yMrOJp@ z`ciQ_=e}<1|6;a%=ZC+;F{6h#0NSON`^>zb{l3<(C1WcU^Ygkv9nXiUyD zl&@^oX~QO#y;i<2=Ho%a>zxPrpfw&aA8JRrn3gZS$*${}Vzt90oYC(EJS>X=N+|?8 zTjBkyArXJz92Br96WAz;)Ff2v`#-FxDQo>ze9sh3vc~Ue@(3M4uPz$$G{0~9SuxAr z<`%2R6SyEYYfR}w&LnHIzf#v|MSVruZWM==<|6#Jpg7(^W*A02ZdppGh$JkS2tH#@?B zEtbdnQiYrgH(8&~qm>%{9izN6KY$l4q)3qi}0#c|C>fBWe z=`I-CxAK<_wO>eC!=qGhj2y(wv7ZXHMWXk8hoKdq;WCHC{Rt0Y?2hYxIsXPud!lA* z7|P$(X8s|mCz|xQ7!?n4+mwMQ0VIEEKywp+vv8fsVKl_>M!GMC*gP!dQN4l=I?&O2GbTvcS|p_h!MlMQ zMWO!298-rhq;O({gk;fXPe}{6prpO_kQs6)&RFDdCk*PPoGmy{mZupXCk|LX{qrK0 zc_K4ty>xsO1vOY?;_d&#PnU>8Ye1V+3exTBRgXVXkkbQh-)Z94ztVq!-%%Z8taak| zmzfv)yh77>^y||0BU9Hhi(Jz@G1|{fdKUOkYE@sQfc zCAFLz)qs!}%j;v-y7WhleIq6as$9sd6#OY?mUdXJZLT*yeY2D(bhw!KKLO7jFydl} zPY*rfddxxncMiRf^@*2}Cq7);;y%;lmS+PFIM<8CSBW*_o92>Gf}Y$=a3sO1PZcuM zSRj%dKPx*F+OtGM*#K=IjWoWO9^%8o0+r+jua41jW0d`!;zTFu{SH}1f-LJWjiX#4 zPXocZ=@#RNF>d`lOuq%${i6QJkdf)owJ(q()lZkl@yo=cWX-2fE#pq%>@UBF8KpCN zq67uV8bbI`>+tu7gxB^3d!K#%B- zjeACgO>CoYzB^!G>>(-2*^;W`gFs@-(L|7v_E*=FCfqI7r*HYfEE1@HIP}}GR+8H^rF%Jz#(wRAdEm#bS~S7G8E07w~Z&gRp&3} zkq~&wL}vUYe25ZR!c0W?pzs_-Cji5WfI()EsD&vitx|;^puczo^p2cBgxHKqGfxMk zPhS(92vJc)CVrbcR!W1|zW6}+yX0jp1N`!F~ z3^-~g)&ogqZM)j_Rr4OW$Ufah@kr8!DlHn42{TKGID$;n(2?W^y>da6DRo6^WDP@@ zAXy((k9;8`14wefBrS+`5`~XjoD6AjvuI|32$ey=xYjAIVF*jJPOr?~+%|{Dn@~?i{xwH5zL@ivq_tFF-gb`GtBQPhF+4Jf|qIGIW0RI{RH<=Iu zSt^9nOE+$ecQZdEjM--=YDm25PN-?t5hNxh*_j*2t9^WSHlzudnYv+ulJ_TFHTyc18{`d`1%h!NOf1d$N1J;-HJbv4FwUcmJ~T%`8JdYD+)v%5YCZ3`1gzb!>GpKZfwmEM>l@4Y zWI3Lzz*1JokhzC|X5~=ajXp2o<8l-F_?d>{Y{km}N5MgEHY0Pu^SWy-EkuFNm~i!z zD;g2Ytuq@z9pgOeMstlQvk=GPMZ2o38FwA2=(CSxhvceV!@0Mr~ClA0@e5tafrXu1zN z2PQ7aqF`OrG?mSr8sa`DOGIF&G0?fkSrM3W<#>9W#q98w+Yy1c{Q*Ege*W5FmZ~5U zYgG!2m)+nbh##c4zFs-0LK<(kjjsHW4~W$~m)zE{(MW`Gi>Zgak|d!>sU`}D0IW9U zB0CmcU<1cM%Y08|SyTqrllbOrcN;mVxC)S3jRPL_7eG~Q_w&} z-86g3;0EFWZY@um%f-lINF>|tyhwW>*;Zl(L0C~(yCYpTVjM?g2}_55W}>V|@A zhe*xM4X=wF;wgT%vUe?frWEraU@Gzx2cs=+Lu-7yOjV_>ks(z<7|tk=h>W%-jL`rF zyw6XvT^Qsh^HhT!hc3>R~EHfw>CDp0&29Gn>LWD-(!0fZJA4Fpaw z#hk?8X^HiLtd5tA;ig4GMrjCjeuBY1i`0>zb-JC9oODpomImVgm9q z7mi*e&Ip3;9P}nT0JvuGDILB!sVw{xP)9_5i5&gV_4AS{hqfWNHBOEcxYT~ToIFvR zVchVMz6aQ@^FbFuH~>h6hAE;VHBV<+ctB}bF$`Zu@lP+X z2~X#xA!34spn%k*B7y@=BvR6|6EHDWxKv68B&uvf<)y0>yW5Z5{RX?b6AtEa(nX{M zXmhtkicPC5Vasd062{Qmc3r$Q6EDe-S^Otd#~6gu&#`%W0+GJOtVBQx1(9)1J@p`W z(0rR9O;V4r+%jO&QST8|~JMkJko^@~zn-x%!z}_>5VL*m~V9fFR zAU#dNvI4mP-lV6P%r8kUoGltql=_~{CDSorF@%7@2Gx?SA$(*=j@yN>yGrabnA_VM z0kN8qkTX-08;^xJXPN;r;8vyFuZ&iqGvB32fpQkeAr3r46aS3l3c$jzF*l%qL~IzRRS1OlWC175Kw?H>bs{rh2w^~? zL?J2}3JQQp85tkCcX^_P<+DIpf;Cfe$Wj$mj!o6ETJx^KHeym57Qh&k;|LXFA z2#~PE3VPaQA{OIpk^?BD&B`%|q|8$GBW0zxAx8mY7!XBi2nf(k<1`{`LV0L$6?yDK ziEg0RPO)&w7{TVzPG%65?=RM75Y))_@Ut;1XcAgs4?ZxbRxJ^-w$LXV{kGp!=_Tp( zlRFY?dR{_68^g-BP^R*IVesO^1tXn_{7D!oT-u?d(#`xMt3s|G4{(x~bRziJIVaps zMQTt0cQ7NHGzX>A`PB0Qg*b$T=d?<3o zk2v+3G=L}!h#z_bBtxGV4P$i>83l@jQo;{T-XI(_obC34FW<18wJmB90@J{a0C8e+ z#KE6ypH(ahQX1zTgM_=5k8OY_s3m*`aKUiS4IV&QsfASKt~8BVtP72(#$=RUd*HJ8 zfzi;VlbRZ&!K^0%xvXIsbb%_6h*_atc7<2B`E8H~ zx_SQ#Z0H;WrnFNzZm^_e`CjL`D{qKp#@d!=?wc zZ4l|pN;sDflE+FZJ+;JiNu0m||bkKrrnt99G^$*)h`Fen3@8z;< zfzr9FGzeIFA)siyFC$;2_x2AqCK`rPsAls#9BZ7{bbfCf>BwdKfWRJ0{00w3d z*9nvTw5-f04%wuHnT&Tc4~A9FlZaCp%^Js?0;4=HT-4)ET-3o;`P|Wnrs94d zAN0g{6OT$m1%Clmw8xASZ%BCx>|i9?MU1%~*K2a^Tj4MtW`k+-Ha85uX2$1M0-|or z0?!dX_$1iZ2>x;*0p+`uYV@~lq#ttKom!5#15jq;7qmj~HjQ%>V#7iq7MwT=(~x=R zD@J8rqqa^M+QMe$ulTe`K2vOaHfA6J;I@c<)De1S6Ur-MM8#*VJyHp8wKBuhA~E`9 z2>LPKo31nEXA1DpKg_7e1QND_KnM|y!!w7&w#4xj?b-@$T$d zkUVoF{`bkVm?=w%ywmlkmWB+!l(pp#Rm{+UDE@4Ln)FjNSu#j4$gxStvg){@+DiqB zImy2{l?k9*Rw*7B0US>pMu#rMglcZb3B?qAdz6Er#e~Jp6vj-F7)Dr0-bgd7F+&JH zBs6*^NAV%%5%sL%Omu1}qca$L1hOkECinulk5qnP2zc;7sz-rUB3l=n}4Z}-F(*%U`12l7^CtW6F0*JnoaiQAjL%7!q z5GWI0rLM@1R5dlI?ZaQW5Jn@{R#TPE#S2~P8FvlTWO8rv6g4EKAY}3)By-6Dg&Ct1 z%is#MrvnEv{(#g87zzQBOB_aBlmOxb}$zMBQsfG#SSGNV6t17U|^vZ*jVgPQflVG zL`EJsE9^TGBHw4mm1yL~9gLX0*678)8jRAe3HVZ$t$=ZivoQmJ{BcwgRTL-SU#7C7)#ke*KA zm9G(OI^>nf(hZB*mf?sEASfIcn2}HagyyWw6NJ1B+#WhVT9x_uCGvQmrbZE;Oeg{B z*XUtu)Ben`Vq8za_#n{nbUi+@sQ7^c_x-YdxsQytXVg7u8UnESXk(f z67V3zQ{(4JG(`ONi(%#pW!g7#jTDkym;zJ6^#u{}9#Lmk|#h`fF5;Z5+U~yQOy?Dhj0|MxwD_aghtWimFFOn>djl6(R z=$w)aCI>F}Ur=2T+-)|5t~Ug~?l%xw&GrO(M8t&vvyFt*a-&+d>O}+75b*$WxR~y$Ce1?`a!g#{SI#`ko{YK1tkI2JB$;Ntc~L=4NkB^cU0R9E)~KEFS41MOIRbOo zgAWR8Sm6;zf`D_P=pqZzJU}z$j$vY`Bf>xz8v4Ppk|!T0qbv-e(*s%g0r?`2lEqhH zpH#6sI#Q7Gs}e7 z9L-NeEGCSpIfMmJ9O|Bk16NvC25H)(KyTCKwr*J$g}Ox6{t}SW%7q-y5Vo9~jjT?B z#$X2|<$R_O6XC=;#zalZKxnwCNLQ~Ur((4+qV6mDP+!a=dXf^&55zdk)~IUA4|F8% ziD`Cg(2`o>dnE4&W%JO-E}H^(f6SDabCEo7R(dvsfIC2_syCS9S+Fbwx;e^LZC#hq z67#EXpw=+nSEF`lcLi>l@>v;pwjBU#)=g0ttC2j4LDztENondMh{W8@yr7HKB)zm5 zu?3!cjd04~mUj@6SdBNA&S-}mg3g{rAxZ;23cHu-Ec|Dwk{>(3fH_28JD8j>4 zanlVjL2eEC;(E5i!(75<1KnYW_-SfsBVw;Gu^6V>BA8xcSe{Rf9m(0X3YwwXCv>WmC?B0dZ8Z1-V^adIY+X9EW z9qr?i#|qgJk}r-T!1kPP1Bxw8CA6|jYX4XoISiK*MqJ%wM!@ijNa))k0YZWK3CYAT zH1g<1H(|WtWUYg+GYeb@NC;Zke$+hjYB5yX9=T33orarB2$O}4NAV{aP2OIh!0)>R z+zPEIIOlS{)`_tb2siQ9+-n$OKjMfEKo#J50C;>}0Bk?IU~rndU~vAsHVlN`W{PR} zPbD)0+Y8b~e2YuxMKC=|3K<2F0`qQ*M1`U0!8QHj3l(IDFpA?qd{UCKLa@Q$CcT4-bYtP;F@Mn<8R98&<~mlX7_ZNez0cmX zRAS`7pG`Nm>hDfUq~0mBcp5o?Mk(lAZO^q#m@c63w;G)r+d0`bV*J?Ae_pM!aESw- z6aqTPP7kiII0(@zJF)$>GS=HJi3_6)b}(&INmwr6!;OnW*_eO9Zqrv;h@62lRVJA9x4)$r-!S`lJqV%zIqqG~-xo zM`#+9W;SnL@~!&fLe8NT50rLNNFTRZEdmsoZpI`(bqHK|}wt`L0h>hmNV~QlH#7kA0 zZFQu{5||MDX)zKd!ubSycx(aGapq-N9RH~SqZlTln`yeG%_E36SZ9nhA-iN1j`27e z!hp?GqnVyaF@azbic1EFt|*_c1`UB0N>W7AHyBDNxRY=!6A}#Ho(LmH;XE7GMrR|_`*c#$?iQVfWkXa$VIsfh!NXGL}7BcK$D#= z&=WIlzQK5inbH%}BxAa-qYJIIC9FFZz`nleX=aAk1=P>`pYOTXX& zD_9&*d`UAtLL|HZip_r#7cSLkSPSRT5RRkwJFJy}&Tq1H)R3K_O1mbi+ zm{!)!#?H;b1ib&?)ebPn!!mY8&zP;Bp%yP0uO~h;yK{KYF6xX2r;=!F!SmsjKgGoe zE;>EPC^CRF6IKZm6R<49jGk&L2vmIe{TFnNt0SNrTl8T7AhOS604SduWyw8Y#mzu~ z3MN#@0t^s;wB6>gM^9EweN%D`%}qc>8M5#*7n0~TV)4U$mCcuFeRJFb+*n0vq7A66K@u@X$ zsCufESo7x>nuo6~K$ zCweNg8xin`0NgVNVX$GrJa2{^2R6V4$oeg;ycC~7@~WUmI|qQ))#G@o@F|!E21fVB zG!Ip9!G3SBe8lZ!yM{*O$sA_^`xm*O37KDq$FYH%PZb!?n}^(ECPwi>DUCvXqgOW6yI=H@Y!SYS zu(vVFt7fOH5+_ooCMOJy=P{1bMkcs7GMi2PF4DQRQ)#^;+E+G123b7#4BqZc@(HdM z-pMi}lV!6^O}G6PBlnDq1>kKAyM(StR3K*99^_&<7FPEi2xeo_7R0MfK<3&JwuO>v zgPoEa5#?pclMVsoU@EdyhE3`Tte%dvQK~{AL8_`RI<}Zef^k-z8LVI$W zdB7xXjonAGdBtAXCHW1Wl1_!hU$Gh!oOaQnH2f6&ll5dE(qA9NX#5b7r~)@AfC5HJ zm^KEd$U;tlfZJ2Nr6-nbi}m(tB!Huj}4+t4on0kB1xZGX>qe$Het~~xxJ|v zOta5jI@*>RE(3M(6OFJ`XYw57X>kY~NXxh%4Pdcil8OiEa4``8G|_}m>E&z_m)R)L z;zedg+xk3EA_%tH5OE|T{9+gFt6+Tu0OtD!1-J(XoINCNvUmn=Z05<;AizmXwaJ)S`fJu`ey0cOfTBZ35lUL+}(saB-K(PT9czlI>C z-Te0q3IJlw;sRP?ER0#HiXEGjla2-K1cp{D%xE7WvOsFgmKc*;9!2_cGK0~Yi1Tcq z&RP0pSUXbwWRJm#5Y7tp>-8yuQ3oUTgm|S oy~!B{d_y>sKY?5Uu5`p_uV-D=Ze18^a0cVHd?rL^vl8u6sc+)~OaK4? literal 0 HcmV?d00001 diff --git a/platform/darwin/docs/theme/assets/fonts/opensans-bold.woff b/platform/darwin/docs/theme/assets/fonts/opensans-bold.woff new file mode 100755 index 0000000000000000000000000000000000000000..005fadcd02ec4f1dc29d3faff72fdf88c00d371c GIT binary patch literal 28584 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 jOxhcn-O7L>oIrIPw_x1J4IW_m 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 a*kohRG7svu0FtBP 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 Hk99@jW^jxL literal 0 HcmV?d00001 diff --git a/platform/darwin/docs/theme/assets/fonts/opensans-regular.woff b/platform/darwin/docs/theme/assets/fonts/opensans-regular.woff new file mode 100755 index 0000000000000000000000000000000000000000..af925a255afd92f0c8d911cd6f83631b756ad941 GIT binary patch literal 27964 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 literal 0 HcmV?d00001 diff --git a/platform/darwin/docs/theme/assets/img/carat.png b/platform/darwin/docs/theme/assets/img/carat.png new file mode 100755 index 0000000000000000000000000000000000000000..29d2f7fd4955fca6bc6fb740e0373a2c358c398e GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRo!3HEV4DF?Wlw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6JlqAi{-jv*Ddl5#RKJQ5NTUZgiPI4RUKGIKU?u8L&ndhX1t za+0CMVUnT(Gnb}ei=c~x==tMH^F1_tBocXwcoSWoO-SZY-o>!8%^=Bms)(~h;m_U( zXNixk28L}0LS5-jKyq@#2gyS|J&f#pGCLkTc<@2s1dqeyqJ*Rc0tSIETAgmODY;(s z2y|Mcp&2}7rpBprBBB~1qM1`N+}4SoxYVPqsXi&l`rxZp{(w0iSy$Nv5*Vy!RapG^ S^0y4=eg;ohKbLh*2~7a!Pg}VF literal 0 HcmV?d00001 diff --git a/platform/darwin/docs/theme/assets/img/dash.png b/platform/darwin/docs/theme/assets/img/dash.png new file mode 100755 index 0000000000000000000000000000000000000000..6f694c7a012b417908da3687a0a39aa182e91c74 GIT binary patch literal 1338 zcmaJ>U2NM_6t){^r>#wcfL0VSTvuX@)$vd4#5N6WVkc|1rR}naMb)(7I5(};#!el# zbtCASsp?W-qE8zSJoFVdA%-T$WL8RI_B? zd+t5o`T5Q{p6=<|U$?VqCxRe#u}(PwSIl{LRKstfSbPYV7pzFiI$~t4QN;vEC}X4n z7RxDpAOV!j*w8ni4MAK3S~6v&;)g`l$axh<$7|>E5RD*h?RH*K2Y`j8L7%1v@%vZi za7@bt@uOUvisvQJuXPqpaHQCkREqd6M>0WG?6AwXR*T65ziuw$&~q$MS$o zfPyh>s<0l}mI@eh_hd(oB8*1tHZ@ojWl%QM;T+Jdm>k66jW?rZ#Atx!qns4-g&E4v z(=;FQ%W^avW?3J{L@2IeV>_(Ca)Lk1vm70uX*$9Rewm8!AxRF0BcZTNSFka?U@5u^ zDtpMY2lVtCmQm<8@|YxHuf`Qs(;a!QQ=g4=WngL}AQLr> z9JWrdsBIHKHXF!fSydodRsaOc@jgNkSU^x9kY&;UP<}3pZ{joC5f_Tevd>4eG~;)Y z=eZ~qp=5#aaUn*E3OES^BApKTU&mCAU>iEyt^S9?)&v0^j*SWDqjRZr20>6rTPSJ& zlzz0f);`}+^~w}lP1PK7Ew3f7ot#*uJ@>1Yo3J0TdsRKpA+*n9JnDXDrM~YvF`;uS|vAh|-QdmRf4AqG=`U z#v1n_Lxg8;&z#YCU2K`_W{-A zUf_|V)B9U(WZ~PP>)O(JZ|Vc-*qP&Q{ + + + diff --git a/platform/darwin/docs/theme/assets/img/mapbox.svg b/platform/darwin/docs/theme/assets/img/mapbox.svg new file mode 100644 index 000000000..a0c1ee44a --- /dev/null +++ b/platform/darwin/docs/theme/assets/img/mapbox.svg @@ -0,0 +1,21 @@ + + + + layer1 + Created with Sketch. + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/platform/darwin/docs/theme/assets/js/jazzy.js b/platform/darwin/docs/theme/assets/js/jazzy.js new file mode 100755 index 000000000..70d90890c --- /dev/null +++ b/platform/darwin/docs/theme/assets/js/jazzy.js @@ -0,0 +1,40 @@ +window.jazzy = {'docset': false} +if (typeof window.dash != 'undefined') { + document.documentElement.className += ' dash' + window.jazzy.docset = true +} +if (navigator.userAgent.match(/xcode/i)) { + document.documentElement.className += ' xcode' + window.jazzy.docset = true +} + +// On doc load, toggle the URL hash discussion if present +$(document).ready(function() { + if (!window.jazzy.docset) { + var linkToHash = $('a[href="' + window.location.hash +'"]'); + linkToHash.trigger("click"); + } +}); + +// On token click, toggle its discussion and animate token.marginLeft +$(".token").click(function(event) { + if (window.jazzy.docset) { + return; + } + var link = $(this); + var animationDuration = 300; + var tokenOffset = "-15px"; + var original = link.css('marginLeft') == tokenOffset; + link.animate({'margin-left':original ? "0px" : tokenOffset}, animationDuration); + $content = link.parent().parent().next(); + $content.slideToggle(animationDuration); + + // Keeps the document from jumping to the hash. + var href = $(this).attr('href'); + if (history.pushState) { + history.pushState({}, '', href); + } else { + location.hash = href; + } + event.preventDefault(); +}); diff --git a/platform/darwin/docs/theme/assets/js/jquery.min.js b/platform/darwin/docs/theme/assets/js/jquery.min.js new file mode 100755 index 000000000..ab28a2472 --- /dev/null +++ b/platform/darwin/docs/theme/assets/js/jquery.min.js @@ -0,0 +1,4 @@ +/*! jQuery v1.11.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ +!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l="1.11.1",m=function(a,b){return new m.fn.init(a,b)},n=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/^-ms-/,p=/-([\da-z])/gi,q=function(a,b){return b.toUpperCase()};m.fn=m.prototype={jquery:l,constructor:m,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=m.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return m.each(this,a,b)},map:function(a){return this.pushStack(m.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},m.extend=m.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||m.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(m.isPlainObject(c)||(b=m.isArray(c)))?(b?(b=!1,f=a&&m.isArray(a)?a:[]):f=a&&m.isPlainObject(a)?a:{},g[d]=m.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},m.extend({expando:"jQuery"+(l+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===m.type(a)},isArray:Array.isArray||function(a){return"array"===m.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!m.isArray(a)&&a-parseFloat(a)>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==m.type(a)||a.nodeType||m.isWindow(a))return!1;try{if(a.constructor&&!j.call(a,"constructor")&&!j.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(k.ownLast)for(b in a)return j.call(a,b);for(b in a);return void 0===b||j.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(b){b&&m.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(o,"ms-").replace(p,q)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=r(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(n,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(r(Object(a))?m.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(g)return g.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=+b.length,d=0,e=a.length;while(c>d)a[e++]=b[d++];if(c!==c)while(void 0!==b[d])a[e++]=b[d++];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=r(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(f=a[b],b=a,a=f),m.isFunction(a)?(c=d.call(arguments,2),e=function(){return a.apply(b||this,c.concat(d.call(arguments)))},e.guid=a.guid=a.guid||m.guid++,e):void 0},now:function(){return+new Date},support:k}),m.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function r(a){var b=a.length,c=m.type(a);return"function"===c||m.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var s=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+-new Date,v=a.document,w=0,x=0,y=gb(),z=gb(),A=gb(),B=function(a,b){return a===b&&(l=!0),0},C="undefined",D=1<<31,E={}.hasOwnProperty,F=[],G=F.pop,H=F.push,I=F.push,J=F.slice,K=F.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},L="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",N="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",O=N.replace("w","w#"),P="\\["+M+"*("+N+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+O+"))|)"+M+"*\\]",Q=":("+N+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+P+")*)|.*)\\)|)",R=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),S=new RegExp("^"+M+"*,"+M+"*"),T=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp("="+M+"*([^\\]'\"]*?)"+M+"*\\]","g"),V=new RegExp(Q),W=new RegExp("^"+O+"$"),X={ID:new RegExp("^#("+N+")"),CLASS:new RegExp("^\\.("+N+")"),TAG:new RegExp("^("+N.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+Q),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+L+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ab=/[+~]/,bb=/'|\\/g,cb=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),db=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)};try{I.apply(F=J.call(v.childNodes),v.childNodes),F[v.childNodes.length].nodeType}catch(eb){I={apply:F.length?function(a,b){H.apply(a,J.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function fb(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],!a||"string"!=typeof a)return d;if(1!==(k=b.nodeType)&&9!==k)return[];if(p&&!e){if(f=_.exec(a))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return I.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName&&b.getElementsByClassName)return I.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=9===k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(bb,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+qb(o[l]);w=ab.test(a)&&ob(b.parentNode)||b,x=o.join(",")}if(x)try{return I.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function gb(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function hb(a){return a[u]=!0,a}function ib(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function jb(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function kb(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||D)-(~a.sourceIndex||D);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function lb(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function mb(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function nb(a){return hb(function(b){return b=+b,hb(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function ob(a){return a&&typeof a.getElementsByTagName!==C&&a}c=fb.support={},f=fb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=fb.setDocument=function(a){var b,e=a?a.ownerDocument||a:v,g=e.defaultView;return e!==n&&9===e.nodeType&&e.documentElement?(n=e,o=e.documentElement,p=!f(e),g&&g!==g.top&&(g.addEventListener?g.addEventListener("unload",function(){m()},!1):g.attachEvent&&g.attachEvent("onunload",function(){m()})),c.attributes=ib(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ib(function(a){return a.appendChild(e.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(e.getElementsByClassName)&&ib(function(a){return a.innerHTML="

",a.firstChild.className="i",2===a.getElementsByClassName("i").length}),c.getById=ib(function(a){return o.appendChild(a).id=u,!e.getElementsByName||!e.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if(typeof b.getElementById!==C&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){var c=typeof a.getAttributeNode!==C&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return typeof b.getElementsByTagName!==C?b.getElementsByTagName(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return typeof b.getElementsByClassName!==C&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(e.querySelectorAll))&&(ib(function(a){a.innerHTML="",a.querySelectorAll("[msallowclip^='']").length&&q.push("[*^$]="+M+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+M+"*(?:value|"+L+")"),a.querySelectorAll(":checked").length||q.push(":checked")}),ib(function(a){var b=e.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+M+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ib(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",Q)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===e||a.ownerDocument===v&&t(v,a)?-1:b===e||b.ownerDocument===v&&t(v,b)?1:k?K.call(k,a)-K.call(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,f=a.parentNode,g=b.parentNode,h=[a],i=[b];if(!f||!g)return a===e?-1:b===e?1:f?-1:g?1:k?K.call(k,a)-K.call(k,b):0;if(f===g)return kb(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?kb(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},e):n},fb.matches=function(a,b){return fb(a,null,null,b)},fb.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return fb(b,n,null,[a]).length>0},fb.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fb.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&E.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},fb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fb.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=fb.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=fb.selectors={cacheLength:50,createPseudo:hb,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(cb,db),a[3]=(a[3]||a[4]||a[5]||"").replace(cb,db),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||fb.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&fb.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(cb,db).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+M+")"+a+"("+M+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||typeof a.getAttribute!==C&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=fb.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fb.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?hb(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=K.call(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:hb(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?hb(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:hb(function(a){return function(b){return fb(a,b).length>0}}),contains:hb(function(a){return function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:hb(function(a){return W.test(a||"")||fb.error("unsupported lang: "+a),a=a.replace(cb,db).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:nb(function(){return[0]}),last:nb(function(a,b){return[b-1]}),eq:nb(function(a,b,c){return[0>c?c+b:c]}),even:nb(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:nb(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:nb(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:nb(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function rb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function sb(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function tb(a,b,c){for(var d=0,e=b.length;e>d;d++)fb(a,b[d],c);return c}function ub(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function vb(a,b,c,d,e,f){return d&&!d[u]&&(d=vb(d)),e&&!e[u]&&(e=vb(e,f)),hb(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||tb(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ub(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=ub(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?K.call(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=ub(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):I.apply(g,r)})}function wb(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=rb(function(a){return a===b},h,!0),l=rb(function(a){return K.call(b,a)>-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d))}];f>i;i++)if(c=d.relative[a[i].type])m=[rb(sb(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return vb(i>1&&sb(m),i>1&&qb(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&wb(a.slice(i,e)),f>e&&wb(a=a.slice(e)),f>e&&qb(a))}m.push(c)}return sb(m)}function xb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=G.call(i));s=ub(s)}I.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&fb.uniqueSort(i)}return k&&(w=v,j=t),r};return c?hb(f):f}return h=fb.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=wb(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xb(e,d)),f.selector=a}return f},i=fb.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(cb,db),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(cb,db),ab.test(j[0].type)&&ob(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&qb(j),!a)return I.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,ab.test(a)&&ob(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ib(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ib(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||jb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ib(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||jb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ib(function(a){return null==a.getAttribute("disabled")})||jb(L,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),fb}(a);m.find=s,m.expr=s.selectors,m.expr[":"]=m.expr.pseudos,m.unique=s.uniqueSort,m.text=s.getText,m.isXMLDoc=s.isXML,m.contains=s.contains;var t=m.expr.match.needsContext,u=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,v=/^.[^:#\[\.,]*$/;function w(a,b,c){if(m.isFunction(b))return m.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return m.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(v.test(b))return m.filter(b,a,c);b=m.filter(b,a)}return m.grep(a,function(a){return m.inArray(a,b)>=0!==c})}m.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?m.find.matchesSelector(d,a)?[d]:[]:m.find.matches(a,m.grep(b,function(a){return 1===a.nodeType}))},m.fn.extend({find:function(a){var b,c=[],d=this,e=d.length;if("string"!=typeof a)return this.pushStack(m(a).filter(function(){for(b=0;e>b;b++)if(m.contains(d[b],this))return!0}));for(b=0;e>b;b++)m.find(a,d[b],c);return c=this.pushStack(e>1?m.unique(c):c),c.selector=this.selector?this.selector+" "+a:a,c},filter:function(a){return this.pushStack(w(this,a||[],!1))},not:function(a){return this.pushStack(w(this,a||[],!0))},is:function(a){return!!w(this,"string"==typeof a&&t.test(a)?m(a):a||[],!1).length}});var x,y=a.document,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=m.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||x).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof m?b[0]:b,m.merge(this,m.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:y,!0)),u.test(c[1])&&m.isPlainObject(b))for(c in b)m.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}if(d=y.getElementById(c[2]),d&&d.parentNode){if(d.id!==c[2])return x.find(a);this.length=1,this[0]=d}return this.context=y,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):m.isFunction(a)?"undefined"!=typeof x.ready?x.ready(a):a(m):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),m.makeArray(a,this))};A.prototype=m.fn,x=m(y);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};m.extend({dir:function(a,b,c){var d=[],e=a[b];while(e&&9!==e.nodeType&&(void 0===c||1!==e.nodeType||!m(e).is(c)))1===e.nodeType&&d.push(e),e=e[b];return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),m.fn.extend({has:function(a){var b,c=m(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if(m.contains(this,c[b]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=t.test(a)||"string"!=typeof a?m(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&m.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?m.unique(f):f)},index:function(a){return a?"string"==typeof a?m.inArray(this[0],m(a)):m.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(m.unique(m.merge(this.get(),m(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}m.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return m.dir(a,"parentNode")},parentsUntil:function(a,b,c){return m.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return m.dir(a,"nextSibling")},prevAll:function(a){return m.dir(a,"previousSibling")},nextUntil:function(a,b,c){return m.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return m.dir(a,"previousSibling",c)},siblings:function(a){return m.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return m.sibling(a.firstChild)},contents:function(a){return m.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:m.merge([],a.childNodes)}},function(a,b){m.fn[a]=function(c,d){var e=m.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=m.filter(d,e)),this.length>1&&(C[a]||(e=m.unique(e)),B.test(a)&&(e=e.reverse())),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return m.each(a.match(E)||[],function(a,c){b[c]=!0}),b}m.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):m.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(c=a.memory&&l,d=!0,f=g||0,g=0,e=h.length,b=!0;h&&e>f;f++)if(h[f].apply(l[0],l[1])===!1&&a.stopOnFalse){c=!1;break}b=!1,h&&(i?i.length&&j(i.shift()):c?h=[]:k.disable())},k={add:function(){if(h){var d=h.length;!function f(b){m.each(b,function(b,c){var d=m.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),b?e=h.length:c&&(g=d,j(c))}return this},remove:function(){return h&&m.each(arguments,function(a,c){var d;while((d=m.inArray(c,h,d))>-1)h.splice(d,1),b&&(e>=d&&e--,f>=d&&f--)}),this},has:function(a){return a?m.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],e=0,this},disable:function(){return h=i=c=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,c||k.disable(),this},locked:function(){return!i},fireWith:function(a,c){return!h||d&&!i||(c=c||[],c=[a,c.slice?c.slice():c],b?i.push(c):j(c)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!d}};return k},m.extend({Deferred:function(a){var b=[["resolve","done",m.Callbacks("once memory"),"resolved"],["reject","fail",m.Callbacks("once memory"),"rejected"],["notify","progress",m.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return m.Deferred(function(c){m.each(b,function(b,f){var g=m.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&m.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?m.extend(a,d):d}},e={};return d.pipe=d.then,m.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&m.isFunction(a.promise)?e:0,g=1===f?a:m.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&m.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;m.fn.ready=function(a){return m.ready.promise().done(a),this},m.extend({isReady:!1,readyWait:1,holdReady:function(a){a?m.readyWait++:m.ready(!0)},ready:function(a){if(a===!0?!--m.readyWait:!m.isReady){if(!y.body)return setTimeout(m.ready);m.isReady=!0,a!==!0&&--m.readyWait>0||(H.resolveWith(y,[m]),m.fn.triggerHandler&&(m(y).triggerHandler("ready"),m(y).off("ready")))}}});function I(){y.addEventListener?(y.removeEventListener("DOMContentLoaded",J,!1),a.removeEventListener("load",J,!1)):(y.detachEvent("onreadystatechange",J),a.detachEvent("onload",J))}function J(){(y.addEventListener||"load"===event.type||"complete"===y.readyState)&&(I(),m.ready())}m.ready.promise=function(b){if(!H)if(H=m.Deferred(),"complete"===y.readyState)setTimeout(m.ready);else if(y.addEventListener)y.addEventListener("DOMContentLoaded",J,!1),a.addEventListener("load",J,!1);else{y.attachEvent("onreadystatechange",J),a.attachEvent("onload",J);var c=!1;try{c=null==a.frameElement&&y.documentElement}catch(d){}c&&c.doScroll&&!function e(){if(!m.isReady){try{c.doScroll("left")}catch(a){return setTimeout(e,50)}I(),m.ready()}}()}return H.promise(b)};var K="undefined",L;for(L in m(k))break;k.ownLast="0"!==L,k.inlineBlockNeedsLayout=!1,m(function(){var a,b,c,d;c=y.getElementsByTagName("body")[0],c&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",k.inlineBlockNeedsLayout=a=3===b.offsetWidth,a&&(c.style.zoom=1)),c.removeChild(d))}),function(){var a=y.createElement("div");if(null==k.deleteExpando){k.deleteExpando=!0;try{delete a.test}catch(b){k.deleteExpando=!1}}a=null}(),m.acceptData=function(a){var b=m.noData[(a.nodeName+" ").toLowerCase()],c=+a.nodeType||1;return 1!==c&&9!==c?!1:!b||b!==!0&&a.getAttribute("classid")===b};var M=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,N=/([A-Z])/g;function O(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(N,"-$1").toLowerCase();if(c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:M.test(c)?m.parseJSON(c):c}catch(e){}m.data(a,b,c)}else c=void 0}return c}function P(a){var b;for(b in a)if(("data"!==b||!m.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function Q(a,b,d,e){if(m.acceptData(a)){var f,g,h=m.expando,i=a.nodeType,j=i?m.cache:a,k=i?a[h]:a[h]&&h; +if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||m.guid++:h),j[k]||(j[k]=i?{}:{toJSON:m.noop}),("object"==typeof b||"function"==typeof b)&&(e?j[k]=m.extend(j[k],b):j[k].data=m.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[m.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[m.camelCase(b)])):f=g,f}}function R(a,b,c){if(m.acceptData(a)){var d,e,f=a.nodeType,g=f?m.cache:a,h=f?a[m.expando]:m.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){m.isArray(b)?b=b.concat(m.map(b,m.camelCase)):b in d?b=[b]:(b=m.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;while(e--)delete d[b[e]];if(c?!P(d):!m.isEmptyObject(d))return}(c||(delete g[h].data,P(g[h])))&&(f?m.cleanData([a],!0):k.deleteExpando||g!=g.window?delete g[h]:g[h]=null)}}}m.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(a){return a=a.nodeType?m.cache[a[m.expando]]:a[m.expando],!!a&&!P(a)},data:function(a,b,c){return Q(a,b,c)},removeData:function(a,b){return R(a,b)},_data:function(a,b,c){return Q(a,b,c,!0)},_removeData:function(a,b){return R(a,b,!0)}}),m.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=m.data(f),1===f.nodeType&&!m._data(f,"parsedAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=m.camelCase(d.slice(5)),O(f,d,e[d])));m._data(f,"parsedAttrs",!0)}return e}return"object"==typeof a?this.each(function(){m.data(this,a)}):arguments.length>1?this.each(function(){m.data(this,a,b)}):f?O(f,a,m.data(f,a)):void 0},removeData:function(a){return this.each(function(){m.removeData(this,a)})}}),m.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=m._data(a,b),c&&(!d||m.isArray(c)?d=m._data(a,b,m.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=m.queue(a,b),d=c.length,e=c.shift(),f=m._queueHooks(a,b),g=function(){m.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return m._data(a,c)||m._data(a,c,{empty:m.Callbacks("once memory").add(function(){m._removeData(a,b+"queue"),m._removeData(a,c)})})}}),m.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.lengthh;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},W=/^(?:checkbox|radio)$/i;!function(){var a=y.createElement("input"),b=y.createElement("div"),c=y.createDocumentFragment();if(b.innerHTML="
a",k.leadingWhitespace=3===b.firstChild.nodeType,k.tbody=!b.getElementsByTagName("tbody").length,k.htmlSerialize=!!b.getElementsByTagName("link").length,k.html5Clone="<:nav>"!==y.createElement("nav").cloneNode(!0).outerHTML,a.type="checkbox",a.checked=!0,c.appendChild(a),k.appendChecked=a.checked,b.innerHTML="",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue,c.appendChild(b),b.innerHTML="",k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,k.noCloneEvent=!0,b.attachEvent&&(b.attachEvent("onclick",function(){k.noCloneEvent=!1}),b.cloneNode(!0).click()),null==k.deleteExpando){k.deleteExpando=!0;try{delete b.test}catch(d){k.deleteExpando=!1}}}(),function(){var b,c,d=y.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(k[b+"Bubbles"]=c in a)||(d.setAttribute(c,"t"),k[b+"Bubbles"]=d.attributes[c].expando===!1);d=null}();var X=/^(?:input|select|textarea)$/i,Y=/^key/,Z=/^(?:mouse|pointer|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=/^([^.]*)(?:\.(.+)|)$/;function ab(){return!0}function bb(){return!1}function cb(){try{return y.activeElement}catch(a){}}m.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=m.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return typeof m===K||a&&m.event.triggered===a.type?void 0:m.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(E)||[""],h=b.length;while(h--)f=_.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=m.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=m.event.special[o]||{},l=m.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&m.expr.match.needsContext.test(e),namespace:p.join(".")},i),(n=g[o])||(n=g[o]=[],n.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?n.splice(n.delegateCount++,0,l):n.push(l),m.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m.hasData(a)&&m._data(a);if(r&&(k=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=_.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=m.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,n=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=n.length;while(f--)g=n[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(n.splice(f,1),g.selector&&n.delegateCount--,l.remove&&l.remove.call(a,g));i&&!n.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||m.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)m.event.remove(a,o+b[j],c,d,!0);m.isEmptyObject(k)&&(delete r.handle,m._removeData(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,l,n,o=[d||y],p=j.call(b,"type")?b.type:b,q=j.call(b,"namespace")?b.namespace.split("."):[];if(h=l=d=d||y,3!==d.nodeType&&8!==d.nodeType&&!$.test(p+m.event.triggered)&&(p.indexOf(".")>=0&&(q=p.split("."),p=q.shift(),q.sort()),g=p.indexOf(":")<0&&"on"+p,b=b[m.expando]?b:new m.Event(p,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=q.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:m.makeArray(c,[b]),k=m.event.special[p]||{},e||!k.trigger||k.trigger.apply(d,c)!==!1)){if(!e&&!k.noBubble&&!m.isWindow(d)){for(i=k.delegateType||p,$.test(i+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),l=h;l===(d.ownerDocument||y)&&o.push(l.defaultView||l.parentWindow||a)}n=0;while((h=o[n++])&&!b.isPropagationStopped())b.type=n>1?i:k.bindType||p,f=(m._data(h,"events")||{})[b.type]&&m._data(h,"handle"),f&&f.apply(h,c),f=g&&h[g],f&&f.apply&&m.acceptData(h)&&(b.result=f.apply(h,c),b.result===!1&&b.preventDefault());if(b.type=p,!e&&!b.isDefaultPrevented()&&(!k._default||k._default.apply(o.pop(),c)===!1)&&m.acceptData(d)&&g&&d[p]&&!m.isWindow(d)){l=d[g],l&&(d[g]=null),m.event.triggered=p;try{d[p]()}catch(r){}m.event.triggered=void 0,l&&(d[g]=l)}return b.result}},dispatch:function(a){a=m.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(m._data(this,"events")||{})[a.type]||[],k=m.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=m.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,g=0;while((e=f.handlers[g++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,c=((m.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i),void 0!==c&&(a.result=c)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(e=[],f=0;h>f;f++)d=b[f],c=d.selector+" ",void 0===e[c]&&(e[c]=d.needsContext?m(c,this).index(i)>=0:m.find(c,this,null,[i]).length),e[c]&&e.push(d);e.length&&g.push({elem:i,handlers:e})}return h]","i"),hb=/^\s+/,ib=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,jb=/<([\w:]+)/,kb=/\s*$/g,rb={option:[1,""],legend:[1,"
","
"],area:[1,"",""],param:[1,"",""],thead:[1,"","
"],tr:[2,"","
"],col:[2,"","
"],td:[3,"","
"],_default:k.htmlSerialize?[0,"",""]:[1,"X
","
"]},sb=db(y),tb=sb.appendChild(y.createElement("div"));rb.optgroup=rb.option,rb.tbody=rb.tfoot=rb.colgroup=rb.caption=rb.thead,rb.th=rb.td;function ub(a,b){var c,d,e=0,f=typeof a.getElementsByTagName!==K?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==K?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||m.nodeName(d,b)?f.push(d):m.merge(f,ub(d,b));return void 0===b||b&&m.nodeName(a,b)?m.merge([a],f):f}function vb(a){W.test(a.type)&&(a.defaultChecked=a.checked)}function wb(a,b){return m.nodeName(a,"table")&&m.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function xb(a){return a.type=(null!==m.find.attr(a,"type"))+"/"+a.type,a}function yb(a){var b=pb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function zb(a,b){for(var c,d=0;null!=(c=a[d]);d++)m._data(c,"globalEval",!b||m._data(b[d],"globalEval"))}function Ab(a,b){if(1===b.nodeType&&m.hasData(a)){var c,d,e,f=m._data(a),g=m._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)m.event.add(b,c,h[c][d])}g.data&&(g.data=m.extend({},g.data))}}function Bb(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!k.noCloneEvent&&b[m.expando]){e=m._data(b);for(d in e.events)m.removeEvent(b,d,e.handle);b.removeAttribute(m.expando)}"script"===c&&b.text!==a.text?(xb(b).text=a.text,yb(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),k.html5Clone&&a.innerHTML&&!m.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&W.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}m.extend({clone:function(a,b,c){var d,e,f,g,h,i=m.contains(a.ownerDocument,a);if(k.html5Clone||m.isXMLDoc(a)||!gb.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(tb.innerHTML=a.outerHTML,tb.removeChild(f=tb.firstChild)),!(k.noCloneEvent&&k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||m.isXMLDoc(a)))for(d=ub(f),h=ub(a),g=0;null!=(e=h[g]);++g)d[g]&&Bb(e,d[g]);if(b)if(c)for(h=h||ub(a),d=d||ub(f),g=0;null!=(e=h[g]);g++)Ab(e,d[g]);else Ab(a,f);return d=ub(f,"script"),d.length>0&&zb(d,!i&&ub(a,"script")),d=h=e=null,f},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,l,n=a.length,o=db(b),p=[],q=0;n>q;q++)if(f=a[q],f||0===f)if("object"===m.type(f))m.merge(p,f.nodeType?[f]:f);else if(lb.test(f)){h=h||o.appendChild(b.createElement("div")),i=(jb.exec(f)||["",""])[1].toLowerCase(),l=rb[i]||rb._default,h.innerHTML=l[1]+f.replace(ib,"<$1>")+l[2],e=l[0];while(e--)h=h.lastChild;if(!k.leadingWhitespace&&hb.test(f)&&p.push(b.createTextNode(hb.exec(f)[0])),!k.tbody){f="table"!==i||kb.test(f)?""!==l[1]||kb.test(f)?0:h:h.firstChild,e=f&&f.childNodes.length;while(e--)m.nodeName(j=f.childNodes[e],"tbody")&&!j.childNodes.length&&f.removeChild(j)}m.merge(p,h.childNodes),h.textContent="";while(h.firstChild)h.removeChild(h.firstChild);h=o.lastChild}else p.push(b.createTextNode(f));h&&o.removeChild(h),k.appendChecked||m.grep(ub(p,"input"),vb),q=0;while(f=p[q++])if((!d||-1===m.inArray(f,d))&&(g=m.contains(f.ownerDocument,f),h=ub(o.appendChild(f),"script"),g&&zb(h),c)){e=0;while(f=h[e++])ob.test(f.type||"")&&c.push(f)}return h=null,o},cleanData:function(a,b){for(var d,e,f,g,h=0,i=m.expando,j=m.cache,l=k.deleteExpando,n=m.event.special;null!=(d=a[h]);h++)if((b||m.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)n[e]?m.event.remove(d,e):m.removeEvent(d,e,g.handle);j[f]&&(delete j[f],l?delete d[i]:typeof d.removeAttribute!==K?d.removeAttribute(i):d[i]=null,c.push(f))}}}),m.fn.extend({text:function(a){return V(this,function(a){return void 0===a?m.text(this):this.empty().append((this[0]&&this[0].ownerDocument||y).createTextNode(a))},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?m.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||m.cleanData(ub(c)),c.parentNode&&(b&&m.contains(c.ownerDocument,c)&&zb(ub(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){1===a.nodeType&&m.cleanData(ub(a,!1));while(a.firstChild)a.removeChild(a.firstChild);a.options&&m.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return m.clone(this,a,b)})},html:function(a){return V(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(fb,""):void 0;if(!("string"!=typeof a||mb.test(a)||!k.htmlSerialize&&gb.test(a)||!k.leadingWhitespace&&hb.test(a)||rb[(jb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(ib,"<$1>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(m.cleanData(ub(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,m.cleanData(ub(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,n=this,o=l-1,p=a[0],q=m.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&nb.test(p))return this.each(function(c){var d=n.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(i=m.buildFragment(a,this[0].ownerDocument,!1,this),c=i.firstChild,1===i.childNodes.length&&(i=c),c)){for(g=m.map(ub(i,"script"),xb),f=g.length;l>j;j++)d=i,j!==o&&(d=m.clone(d,!0,!0),f&&m.merge(g,ub(d,"script"))),b.call(this[j],d,j);if(f)for(h=g[g.length-1].ownerDocument,m.map(g,yb),j=0;f>j;j++)d=g[j],ob.test(d.type||"")&&!m._data(d,"globalEval")&&m.contains(h,d)&&(d.src?m._evalUrl&&m._evalUrl(d.src):m.globalEval((d.text||d.textContent||d.innerHTML||"").replace(qb,"")));i=c=null}return this}}),m.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){m.fn[a]=function(a){for(var c,d=0,e=[],g=m(a),h=g.length-1;h>=d;d++)c=d===h?this:this.clone(!0),m(g[d])[b](c),f.apply(e,c.get());return this.pushStack(e)}});var Cb,Db={};function Eb(b,c){var d,e=m(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:m.css(e[0],"display");return e.detach(),f}function Fb(a){var b=y,c=Db[a];return c||(c=Eb(a,b),"none"!==c&&c||(Cb=(Cb||m("