Full Code of kharrison/albookcode for AI

main 9327677a8f89 cached
1546 files
5.4 MB
1.5M tokens
1 requests
Download .txt
Showing preview only (6,058K chars total). Download the full file or copy to clipboard to get everything.
Repository: kharrison/albookcode
Branch: main
Commit: 9327677a8f89
Files: 1546
Total size: 5.4 MB

Directory structure:
gitextract_eopec34y/

├── LICENSE
├── README.md
├── sample-code/
│   ├── adaptability/
│   │   ├── AdaptAsset-v1/
│   │   │   ├── AdaptAsset-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptAsset-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptConstraints-v1/
│   │   │   ├── AdaptConstraints-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── buttonTemplate.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptConstraints-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptLayout-v1/
│   │   │   ├── AdaptLayout-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Sun.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptLayout-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptSize-v1/
│   │   │   ├── AdaptSize-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptSize-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptStack-v1/
│   │   │   ├── AdaptStack-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptStack-v2/
│   │   │   ├── AdaptStack-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptStack-v3/
│   │   │   ├── AdaptStack-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       ├── project.xcworkspace/
│   │   │       │   ├── contents.xcworkspacedata
│   │   │       │   └── xcshareddata/
│   │   │       │       └── IDEWorkspaceChecks.plist
│   │   │       └── xcshareddata/
│   │   │           └── xcschemes/
│   │   │               └── AdaptStack-v3.xcscheme
│   │   ├── AdaptStack-v4/
│   │   │   ├── AdaptStack-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptStack-v5/
│   │   │   ├── AdaptStack-v5/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v5.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptText-v1/
│   │   │   ├── AdaptText-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   ├── Localizable.stringsdict
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptText-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── AdaptType-v1/
│   │       ├── AdaptType-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   └── SettingsViewController.swift
│   │       └── AdaptType-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── creating-constraints-in-code/
│   │   ├── Anchors-v1/
│   │   │   ├── Anchors-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Anchors-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Anchors-v2/
│   │   │   ├── Anchors-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── StopGoView.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── Anchors-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── NSLayoutConstraint-v1/
│   │   │   ├── NSLayoutConstraint-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── NSLayoutConstraint-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── VFL-v1/
│   │       ├── VFL-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   └── LaunchScreen.storyboard
│   │       │   ├── Info.plist
│   │       │   └── ViewController.swift
│   │       └── VFL-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── debugging/
│   │   ├── Conflict-v1/
│   │   │   ├── Conflict-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Conflict-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Conflict-v2/
│   │   │   ├── Conflict-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Conflict-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       ├── project.xcworkspace/
│   │   │       │   ├── contents.xcworkspacedata
│   │   │       │   └── xcshareddata/
│   │   │       │       └── IDEWorkspaceChecks.plist
│   │   │       └── xcshareddata/
│   │   │           └── xcschemes/
│   │   │               └── Conflict-v2.xcscheme
│   │   ├── Loop-v1/
│   │   │   ├── Loop-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Loop-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       ├── project.xcworkspace/
│   │   │       │   ├── contents.xcworkspacedata
│   │   │       │   └── xcshareddata/
│   │   │       │       └── IDEWorkspaceChecks.plist
│   │   │       └── xcshareddata/
│   │   │           └── xcschemes/
│   │   │               └── Loop-v1.xcscheme
│   │   └── Missing-v1/
│   │       ├── Missing-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── ConfirmView.swift
│   │       │   ├── Info.plist
│   │       │   ├── UIView+Ambiguous.swift
│   │       │   └── ViewController.swift
│   │       └── Missing-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── dynamic-type/
│   │   ├── CustomFont-v1/
│   │   │   ├── CustomFont-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Noteworthy.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   ├── QuoteViewController.swift
│   │   │   │   ├── ScaledFont.swift
│   │   │   │   └── UILabel+Style.swift
│   │   │   └── CustomFont-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CustomFont-v2/
│   │   │   ├── CustomFont-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Noteworthy.plist
│   │   │   │   ├── NotoSerif.plist
│   │   │   │   ├── Noto_Serif/
│   │   │   │   │   └── LICENSE.txt
│   │   │   │   ├── Quote.swift
│   │   │   │   ├── QuoteViewController.swift
│   │   │   │   └── ScaledFont.swift
│   │   │   └── CustomFont-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v1/
│   │   │   ├── DynamicType-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   └── QuoteViewController.swift
│   │   │   └── DynamicType-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v2/
│   │   │   ├── DynamicType-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   ├── QuoteViewController.swift
│   │   │   │   └── UILabel+Style.swift
│   │   │   └── DynamicType-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v3/
│   │   │   ├── DynamicType-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   └── QuoteViewController.swift
│   │   │   └── DynamicType-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v4/
│   │   │   ├── DynamicType-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   └── QuoteViewController.swift
│   │   │   └── DynamicType-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v5/
│   │   │   ├── DynamicType-v5/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   ├── QuoteViewController.swift
│   │   │   │   └── UILabel+Style.swift
│   │   │   └── DynamicType-v5.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScaledFont-v1/
│   │   │   ├── ScaledFont-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── UIFont+scaleFactor.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── ScaledFont-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── TextView-v1/
│   │       ├── TextView-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   ├── Quote.swift
│   │       │   └── QuoteViewController.swift
│   │       └── TextView-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── engine/
│   │   ├── Alignment-v1/
│   │   │   ├── Alignment-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── CrazyShadow.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── GridView.swift
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Alignment-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       ├── project.xcworkspace/
│   │   │       │   ├── contents.xcworkspacedata
│   │   │       │   └── xcshareddata/
│   │   │       │       └── IDEWorkspaceChecks.plist
│   │   │       └── xcshareddata/
│   │   │           └── xcschemes/
│   │   │               └── Alignment-v1.xcscheme
│   │   ├── Alignment-v2/
│   │   │   ├── Alignment-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   └── AppIcon.appiconset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── GridView.swift
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   └── UIImageView+UYLExtensions.swift
│   │   │   └── Alignment-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Animate-v1/
│   │   │   ├── Animate-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Animate-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── Layout-v1/
│   │       ├── Layout-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   ├── PreviewPane.swift
│   │       │   └── PreviewViewController.swift
│   │       └── Layout-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── layout-before-auto-layout/
│   │   ├── CodeLayout-v1/
│   │   │   ├── CodeLayout-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── RootViewController.swift
│   │   │   └── CodeLayout-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v2/
│   │   │   ├── CodeLayout-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   └── RootViewController.xib
│   │   │   └── CodeLayout-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v3/
│   │   │   ├── CodeLayout-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── RootViewController.swift
│   │   │   └── CodeLayout-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v4/
│   │   │   ├── CodeLayout-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── RootViewController.swift
│   │   │   └── CodeLayout-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v5/
│   │   │   ├── CodeLayout-v5/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   └── SceneDelegate.swift
│   │   │   └── CodeLayout-v5.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v6/
│   │   │   ├── CodeLayout-v6/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── TileView.swift
│   │   │   └── CodeLayout-v6.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v1/
│   │   │   ├── FirstLayout-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v2/
│   │   │   ├── FirstLayout-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v3/
│   │   │   ├── FirstLayout-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v4/
│   │   │   ├── FirstLayout-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   ├── TileView.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v5/
│   │   │   ├── FirstLayout-v5/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   ├── TileView.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v5.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── FirstLayout-v6/
│   │       ├── FirstLayout-v6/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AccentColor.colorset/
│   │       │   │   │   └── Contents.json
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   ├── SceneDelegate.swift
│   │       │   ├── TileView.swift
│   │       │   └── ViewController.swift
│   │       └── FirstLayout-v6.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── layout-priorities/
│   │   ├── CHCR-v1/
│   │   │   ├── CHCR-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Sun.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── CHCR-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CHCR-v2/
│   │   │   ├── CHCR-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Sun.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── RootViewController.swift
│   │   │   └── CHCR-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ContentMode/
│   │   │   ├── ContentMode/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── ContentMode.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Priorities-v1/
│   │   │   ├── Priorities-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Snow.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Sun.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Priorities-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── Priorities-v2/
│   │       ├── Priorities-v2/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   ├── Contents.json
│   │       │   │   ├── Snow.imageset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Sun.imageset/
│   │       │   │       └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   └── LaunchScreen.storyboard
│   │       │   ├── Info.plist
│   │       │   └── RootViewController.swift
│   │       └── Priorities-v2.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── safe-areas-layout-margins/
│   │   ├── Anchors-v3/
│   │   │   ├── Anchors-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Anchors-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Anchors-v4/
│   │   │   ├── Anchors-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── UIViewController+SafeAnchor.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── Anchors-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── EqualSpacing-v1/
│   │   │   ├── EqualSpacing-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── buttonTemplate.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── EqualSpacing-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── EqualSpacing-v2/
│   │   │   ├── EqualSpacing-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── buttonTemplate.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── EqualSpacing-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Keyboard-v1/
│   │   │   ├── Keyboard-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── Toolbar.swift
│   │   │   └── Keyboard-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Keyboard-v2/
│   │   │   ├── Keyboard-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── Toolbar.swift
│   │   │   └── Keyboard-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Keyboard-v3/
│   │   │   ├── Keyboard-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── TextViewController.swift
│   │   │   └── Keyboard-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Margins-v1/
│   │   │   ├── Margins-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Margins-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Margins-v2/
│   │   │   ├── Margins-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Margins-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Margins-v3/
│   │   │   ├── Margins-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── NestedView.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── Margins-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── SafeArea-v1/
│   │   │   ├── SafeArea-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── SafeArea-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── SafeArea-v2/
│   │       ├── SafeArea-v2/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   └── ViewController.swift
│   │       └── SafeArea-v2.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── scroll-views/
│   │   ├── AdaptScroll-v1/
│   │   │   ├── AdaptScroll-v1/
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AdaptiveScrollView.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── AdaptScroll-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollFloat-v1/
│   │   │   ├── ScrollFloat-v1/
│   │   │   │   ├── ActivityView.swift
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── ScrollFloat-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollGuide-v1/
│   │   │   ├── ScrollGuide-v1/
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── ScrollGuide-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollGuide-v2/
│   │   │   ├── ScrollGuide-v2/
│   │   │   │   ├── ActivityView.swift
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── ScrollGuide-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollStack-v1/
│   │   │   ├── ScrollStack-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── ScrollStack-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollView-v1/
│   │   │   ├── ScrollView-v1/
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── ScrollView-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── ScrollView-v2/
│   │       ├── ScrollView-v2/
│   │       │   ├── ActivityView.swift
│   │       │   ├── ActivityViewController.swift
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   ├── Contents.json
│   │       │   │   └── Skater.imageset/
│   │       │   │       └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   └── LaunchScreen.storyboard
│   │       │   └── Info.plist
│   │       └── ScrollView-v2.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── stack-views/
│   │   ├── AnimatingStack-v1/
│   │   │   ├── AnimatingStack-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AnimatingStack-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AnimatingStack-v2/
│   │   │   ├── AnimatingStack-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AnimatingStack-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AnimatingStack-v3/
│   │   │   ├── AnimatingStack-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── UIStackView+Extension.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── AnimatingStack-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AnimatingStack-v4/
│   │   │   ├── AnimatingStack-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AnimatingStack-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Distribution/
│   │   │   ├── Distribution/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Distribution.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── MultiLine-v1/
│   │   │   ├── MultiLine-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── MultiLine-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── MultiLine-v2/
│   │   │   ├── MultiLine-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── MultiLine-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── StackProfile-v1/
│   │   │   ├── StackProfile-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── placeholder.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Profile.swift
│   │   │   │   └── ProfileViewController.swift
│   │   │   └── StackProfile-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── StackProfile-v2/
│   │   │   ├── StackProfile-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── placeholder.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── sky.colorset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Profile.swift
│   │   │   │   └── ProfileViewController.swift
│   │   │   └── StackProfile-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── StackViews-v1/
│   │   │   ├── StackViews-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   └── AppIcon.appiconset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── StackViews-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── StackViews-v2/
│   │   │   ├── StackViews-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   └── AppIcon.appiconset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── StackViews-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── StackViews-v3/
│   │       ├── StackViews-v3/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   └── AppIcon.appiconset/
│   │       │   │       └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   └── LaunchScreen.storyboard
│   │       │   ├── Info.plist
│   │       │   └── RootViewController.swift
│   │       └── StackViews-v3.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── table-views/
│   │   ├── ReadableTable-v1/
│   │   │   ├── ReadableTable-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── ReadableTable-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ReadableTable-v2/
│   │   │   ├── ReadableTable-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── ReadableTable-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── SelfSizing-v1/
│   │   │   ├── SelfSizing-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── SelfSizing-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── SelfSizing-v2/
│   │   │   ├── SelfSizing-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   ├── LineCell.xib
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── SelfSizing-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── SelfSizing-v3/
│   │   │   ├── SelfSizing-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── SelfSizing-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── TableHeader-v1/
│   │   │   ├── TableHeader-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookHeaderView.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── TableHeader-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── TableHeader-v2/
│   │       ├── TableHeader-v2/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── BookHeaderView.xib
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   ├── LineCell.xib
│   │       │   │   └── Main.storyboard
│   │       │   ├── Book.swift
│   │       │   ├── BookDataSource.swift
│   │       │   ├── BookHeaderView.swift
│   │       │   ├── BookTableViewController.swift
│   │       │   ├── Huckleberry.plist
│   │       │   ├── Info.plist
│   │       │   ├── LineCell.swift
│   │       │   └── ReusableIdentifier.swift
│   │       └── TableHeader-v2.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   └── using-interface-builder/
│       └── TwoButtons-v1/
│           ├── TwoButtons-v1/
│           │   ├── AppDelegate.swift
│           │   ├── Assets.xcassets/
│           │   │   ├── AppIcon.appiconset/
│           │   │   │   └── Contents.json
│           │   │   └── Contents.json
│           │   ├── Base.lproj/
│           │   │   ├── LaunchScreen.storyboard
│           │   │   └── Main.storyboard
│           │   ├── Info.plist
│           │   └── ViewController.swift
│           └── TwoButtons-v1.xcodeproj/
│               ├── project.pbxproj
│               └── project.xcworkspace/
│                   ├── contents.xcworkspacedata
│                   └── xcshareddata/
│                       └── IDEWorkspaceChecks.plist
└── solutions/
    ├── adaptability/
    │   ├── ch14-1-v1/
    │   │   ├── ch14-1-v1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── ch14-1-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch14-1-v2/
    │   │   ├── ch14-1-v2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── ch14-1-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch14-1-v3/
    │   │   ├── ch14-1-v3/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AccentColor.colorset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── ch14-1-v3.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           └── contents.xcworkspacedata
    │   ├── ch14-2-v1/
    │   │   ├── ch14-2-v1/
    │   │   │   ├── AdaptiveScrollView.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   ├── SkyBlue.colorset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Sun.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Forecast.swift
    │   │   │   ├── Info.plist
    │   │   │   └── TodayViewController.swift
    │   │   └── ch14-2-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch14-2-v2/
    │   │   ├── ch14-2-v2/
    │   │   │   ├── AdaptiveScrollView.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   ├── SkyBlue.colorset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Sun.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Forecast.swift
    │   │   │   ├── ForecastView.swift
    │   │   │   ├── Info.plist
    │   │   │   ├── TodayViewController.swift
    │   │   │   └── UILabel+Style.swift
    │   │   └── ch14-2-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── ch14-2-v3/
    │       ├── ch14-2-v3/
    │       │   ├── AdaptiveScrollView.swift
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AccentColor.colorset/
    │       │   │   │   └── Contents.json
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   ├── Contents.json
    │       │   │   ├── SkyBlue.colorset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Sun.imageset/
    │       │   │       └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   └── LaunchScreen.storyboard
    │       │   ├── Forecast.swift
    │       │   ├── ForecastView.swift
    │       │   ├── Info.plist
    │       │   ├── TodayViewController.swift
    │       │   └── UILabel+Style.swift
    │       └── ch14-2-v3.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               └── contents.xcworkspacedata
    ├── creating-constraints-in-code/
    │   ├── Challenge5-1/
    │   │   ├── Challenge5-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge5-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge5-2/
    │       ├── Challenge5-2/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   └── LaunchScreen.storyboard
    │       │   ├── Info.plist
    │       │   ├── TileView.swift
    │       │   └── ViewController.swift
    │       └── Challenge5-2.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── dynamic-type/
    │   ├── ch12-1-v1/
    │   │   ├── ch12-1-v1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Book.swift
    │   │   │   ├── BookViewController.swift
    │   │   │   └── Info.plist
    │   │   └── ch12-1-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch12-1-v2/
    │   │   ├── ch12-1-v2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Book.swift
    │   │   │   ├── BookViewController.swift
    │   │   │   ├── Info.plist
    │   │   │   ├── UILabel+Style.swift
    │   │   │   └── UITextView+Style.swift
    │   │   └── ch12-1-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch12-2-v1/
    │   │   ├── ch12-2-v1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── ch12-2-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── ch12-3-v1/
    │       ├── ch12-3-v1/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── BookViewController.swift
    │       │   ├── Chapter.swift
    │       │   ├── Info.plist
    │       │   ├── Roboto/
    │       │   │   └── LICENSE.txt
    │       │   ├── Roboto.plist
    │       │   └── ScaledFont.swift
    │       └── ch12-3-v1.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── engine/
    │   ├── Challenge9-1/
    │   │   ├── Challenge9-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   ├── SceneDelegate.swift
    │   │   │   └── ViewController.swift
    │   │   └── Challenge9-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge9-2-v1/
    │   │   ├── Challenge9-2-v1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   ├── PanicView.swift
    │   │   │   ├── RootViewController.swift
    │   │   │   └── SceneDelegate.swift
    │   │   └── Challenge9-2-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge9-2-v2/
    │       ├── Challenge9-2-v2/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── Info.plist
    │       │   ├── PanicView.swift
    │       │   ├── SceneDelegate.swift
    │       │   └── ViewController.swift
    │       └── Challenge9-2-v2.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── interface-builder/
    │   ├── Challenge4-1/
    │   │   ├── Challenge4-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge4-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge4-2/
    │   │   ├── Challenge4-2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge4-2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge4-3/
    │   │   ├── Challenge4-3/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge4-3.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge4-4/
    │       ├── Challenge4-4/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── Info.plist
    │       │   └── ViewController.swift
    │       └── Challenge4-4.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── layout-before-auto-layout/
    │   ├── Challenge2-1/
    │   │   ├── Challenge2-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge2-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge2-2/
    │   │   ├── Challenge2-2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── RootViewController.swift
    │   │   └── Challenge2-2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge2-3/
    │   │   ├── Challenge2-3/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   ├── RGBView.swift
    │   │   │   └── ViewController.swift
    │   │   └── Challenge2-3.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge2-4/
    │       ├── Challenge2-4/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   └── AppIcon.appiconset/
    │       │   │       └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── Info.plist
    │       │   ├── RGBView.swift
    │       │   └── ViewController.swift
    │       └── Challenge2-4.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── layout-priorities/
    │   ├── Code/
    │   │   ├── Challenge7-1/
    │   │   │   ├── Challenge7-1/
    │   │   │   │   ├── AppDelegate.swift
    │   │   │   │   ├── Assets.xcassets/
    │   │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │   │       └── Contents.json
    │   │   │   │   ├── Base.lproj/
    │   │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   │   ├── Info.plist
    │   │   │   │   └── RootViewController.swift
    │   │   │   └── Challenge7-1.xcodeproj/
    │   │   │       ├── project.pbxproj
    │   │   │       └── project.xcworkspace/
    │   │   │           ├── contents.xcworkspacedata
    │   │   │           └── xcshareddata/
    │   │   │               └── IDEWorkspaceChecks.plist
    │   │   ├── Challenge7-2/
    │   │   │   ├── Challenge7-2/
    │   │   │   │   ├── AppDelegate.swift
    │   │   │   │   ├── Assets.xcassets/
    │   │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │   │       └── Contents.json
    │   │   │   │   ├── Base.lproj/
    │   │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   │   ├── Info.plist
    │   │   │   │   └── RootViewController.swift
    │   │   │   └── Challenge7-2.xcodeproj/
    │   │   │       ├── project.pbxproj
    │   │   │       └── project.xcworkspace/
    │   │   │           ├── contents.xcworkspacedata
    │   │   │           └── xcshareddata/
    │   │   │               └── IDEWorkspaceChecks.plist
    │   │   └── Challenge7-3/
    │   │       ├── Challenge7-3/
    │   │       │   ├── AppDelegate.swift
    │   │       │   ├── Assets.xcassets/
    │   │       │   │   ├── AppIcon.appiconset/
    │   │       │   │   │   └── Contents.json
    │   │       │   │   └── Contents.json
    │   │       │   ├── Base.lproj/
    │   │       │   │   └── LaunchScreen.storyboard
    │   │       │   ├── Info.plist
    │   │       │   └── ViewController.swift
    │   │       └── Challenge7-3.xcodeproj/
    │   │           ├── project.pbxproj
    │   │           └── project.xcworkspace/
    │   │               ├── contents.xcworkspacedata
    │   │               └── xcshareddata/
    │   │                   └── IDEWorkspaceChecks.plist
    │   └── Storyboard/
    │       ├── Challenge7-1/
    │       │   ├── Challenge7-1/
    │       │   │   ├── AppDelegate.swift
    │       │   │   ├── Assets.xcassets/
    │       │   │   │   ├── AppIcon.appiconset/
    │       │   │   │   │   └── Contents.json
    │       │   │   │   └── Contents.json
    │       │   │   ├── Base.lproj/
    │       │   │   │   ├── LaunchScreen.storyboard
    │       │   │   │   └── Main.storyboard
    │       │   │   ├── Info.plist
    │       │   │   └── ViewController.swift
    │       │   └── Challenge7-1.xcodeproj/
    │       │       ├── project.pbxproj
    │       │       └── project.xcworkspace/
    │       │           ├── contents.xcworkspacedata
    │       │           └── xcshareddata/
    │       │               └── IDEWorkspaceChecks.plist
    │       ├── Challenge7-2/
    │       │   ├── Challenge7-2/
    │       │   │   ├── AppDelegate.swift
    │       │   │   ├── Assets.xcassets/
    │       │   │   │   ├── AppIcon.appiconset/
    │       │   │   │   │   └── Contents.json
    │       │   │   │   └── Contents.json
    │       │   │   ├── Base.lproj/
    │       │   │   │   ├── LaunchScreen.storyboard
    │       │   │   │   └── Main.storyboard
    │       │   │   ├── Info.plist
    │       │   │   └── ViewController.swift
    │       │   └── Challenge7-2.xcodeproj/
    │       │       ├── project.pbxproj
    │       │       └── project.xcworkspace/
    │       │           ├── contents.xcworkspacedata
    │       │           └── xcshareddata/
    │       │               └── IDEWorkspaceChecks.plist
    │       └── Challenge7-3/
    │           ├── Challenge7-3/
    │           │   ├── AppDelegate.swift
    │           │   ├── Assets.xcassets/
    │           │   │   ├── AppIcon.appiconset/
    │           │   │   │   └── Contents.json
    │           │   │   └── Contents.json
    │           │   ├── Base.lproj/
    │           │   │   ├── LaunchScreen.storyboard
    │           │   │   └── Main.storyboard
    │           │   ├── Info.plist
    │           │   └── ViewController.swift
    │           └── Challenge7-3.xcodeproj/
    │               ├── project.pbxproj
    │               └── project.xcworkspace/
    │                   ├── contents.xcworkspacedata
    │                   └── xcshareddata/
    │                       └── IDEWorkspaceChecks.plist
    ├── safe-areas-layout-margins/
    │   ├── Challenge6-1/
    │   │   ├── Challenge6-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge6-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge6-2/
    │   │   ├── Challenge6-2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge6-2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge6-3/
    │   │   ├── Challenge6-3/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   ├── RootViewController.swift
    │   │   │   └── TileView.swift
    │   │   └── Challenge6-3.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge6-4/
    │       ├── Challenge6-4/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   └── LaunchScreen.storyboard
    │       │   ├── Info.plist
    │       │   ├── RootViewController.swift
    │       │   ├── TileView.swift
    │       │   └── UIViewController+SafeAnchor.swift
    │       └── Challenge6-4.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── scroll-views/
    │   ├── ch11-1-v1/
    │   │   ├── ch11-1-v1/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-1-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch11-1-v2/
    │   │   ├── ch11-1-v2/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-1-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch11-2-v1/
    │   │   ├── ch11-2-v1/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-2-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch11-2-v2/
    │   │   ├── ch11-2-v2/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-2-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch11-3-v1/
    │   │   ├── ch11-3-v1/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AdaptiveScrollView.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-3-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── ch11-3-v2/
    │       ├── ch11-3-v2/
    │       │   ├── ActivityViewController.swift
    │       │   ├── AdaptiveScrollView.swift
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   ├── Contents.json
    │       │   │   └── Skater.imageset/
    │       │   │       └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   └── LaunchScreen.storyboard
    │       │   └── Info.plist
    │       └── ch11-3-v2.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── stack-views/
    │   ├── Code/
    │   │   ├── Challenge8-1/
    │   │   │   ├── Challenge8-1/
    │   │   │   │   ├── AppDelegate.swift
    │   │   │   │   ├── Assets.xcassets/
    │   │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   │   └── Contents.json
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Base.lproj/
    │   │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   │   ├── Info.plist
    │   │   │   │   └── RootViewController.swift
    │   │   │   └── Challenge8-1.xcodeproj/
    │   │   │       ├── project.pbxproj
    │   │   │       └── project.xcworkspace/
    │   │   │           ├── contents.xcworkspacedata
    │   │   │           └── xcshareddata/
    │   │   │               └── IDEWorkspaceChecks.plist
    │   │   ├── Challenge8-2/
    │   │   │   ├── Challenge8-2/
    │   │   │   │   ├── AppDelegate.swift
    │   │   │   │   ├── Assets.xcassets/
    │   │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   │   └── Contents.json
    │   │   │   │   │   ├── Contents.json
    │   │   │   │   │   └── Sun.imageset/
    │   │   │   │   │       └── Contents.json
    │   │   │   │   ├── Base.lproj/
    │   │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   │   ├── Info.plist
    │   │   │   │   └── RootViewController.swift
    │   │   │   └── Challenge8-2.xcodeproj/
    │   │   │       ├── project.pbxproj
    │   │   │       └── project.xcworkspace/
    │   │   │           ├── contents.xcworkspacedata
    │   │   │           └── xcshareddata/
    │   │   │               └── IDEWorkspaceChecks.plist
    │   │   └── Challenge8-3/
    │   │       ├── Challenge8-3/
    │   │       │   ├── AppDelegate.swift
    │   │       │   ├── Assets.xcassets/
    │   │       │   │   ├── AppIcon.appiconset/
    │   │       │   │   │   └── Contents.json
    │   │       │   │   └── Contents.json
    │   │       │   ├── Base.lproj/
    │   │       │   │   └── LaunchScreen.storyboard
    │   │       │   ├── Info.plist
    │   │       │   ├── RootViewController.swift
    │   │       │   └── UIStackView+Extension.swift
    │   │       └── Challenge8-3.xcodeproj/
    │   │           ├── project.pbxproj
    │   │           └── project.xcworkspace/
    │   │               ├── contents.xcworkspacedata
    │   │               └── xcshareddata/
    │   │                   └── IDEWorkspaceChecks.plist
    │   └── Storyboard/
    │       ├── Challenge8-1/
    │       │   ├── Challenge8-1/
    │       │   │   ├── AppDelegate.swift
    │       │   │   ├── Assets.xcassets/
    │       │   │   │   ├── AppIcon.appiconset/
    │       │   │   │   │   └── Contents.json
    │       │   │   │   └── Contents.json
    │       │   │   ├── Base.lproj/
    │       │   │   │   ├── LaunchScreen.storyboard
    │       │   │   │   └── Main.storyboard
    │       │   │   ├── Info.plist
    │       │   │   └── ViewController.swift
    │       │   └── Challenge8-1.xcodeproj/
    │       │       ├── project.pbxproj
    │       │       └── project.xcworkspace/
    │       │           ├── contents.xcworkspacedata
    │       │           └── xcshareddata/
    │       │               └── IDEWorkspaceChecks.plist
    │       ├── Challenge8-2/
    │       │   ├── Challenge8-2/
    │       │   │   ├── AppDelegate.swift
    │       │   │   ├── Assets.xcassets/
    │       │   │   │   ├── AppIcon.appiconset/
    │       │   │   │   │   └── Contents.json
    │       │   │   │   ├── Contents.json
    │       │   │   │   └── Sun.imageset/
    │       │   │   │       └── Contents.json
    │       │   │   ├── Base.lproj/
    │       │   │   │   ├── LaunchScreen.storyboard
    │       │   │   │   └── Main.storyboard
    │       │   │   ├── Info.plist
    │       │   │   └── ViewController.swift
    │       │   └── Challenge8-2.xcodeproj/
    │       │       ├── project.pbxproj
    │       │       └── project.xcworkspace/
    │       │           ├── contents.xcworkspacedata
    │       │           └── xcshareddata/
    │       │               └── IDEWorkspaceChecks.plist
    │       └── Challenge8-3/
    │           ├── Challenge8-3/
    │           │   ├── AppDelegate.swift
    │           │   ├── Assets.xcassets/
    │           │   │   ├── AppIcon.appiconset/
    │           │   │   │   └── Contents.json
    │           │   │   └── Contents.json
    │           │   ├── Base.lproj/
    │           │   │   ├── LaunchScreen.storyboard
    │           │   │   └── Main.storyboard
    │           │   ├── Info.plist
    │           │   ├── UIStackView+Extension.swift
    │           │   └── ViewController.swift
    │           └── Challenge8-3.xcodeproj/
    │               ├── project.pbxproj
    │               └── project.xcworkspace/
    │                   ├── contents.xcworkspacedata
    │                   └── xcshareddata/
    │                       └── IDEWorkspaceChecks.plist
    └── table-views/
        ├── ch13-1-v1/
        │   ├── ch13-1-v1/
        │   │   ├── AppDelegate.swift
        │   │   ├── Assets.xcassets/
        │   │   │   ├── AppIcon.appiconset/
        │   │   │   │   └── Contents.json
        │   │   │   ├── Contents.json
        │   │   │   └── placeholder.imageset/
        │   │   │       └── Contents.json
        │   │   ├── Base.lproj/
        │   │   │   ├── LaunchScreen.storyboard
        │   │   │   └── Main.storyboard
        │   │   ├── Info.plist
        │   │   ├── Message.swift
        │   │   ├── MessageCell.swift
        │   │   ├── MessageDataSource.swift
        │   │   ├── MessageTableViewController.swift
        │   │   └── ReusableIdentifier.swift
        │   └── ch13-1-v1.xcodeproj/
        │       ├── project.pbxproj
        │       └── project.xcworkspace/
        │           ├── contents.xcworkspacedata
        │           └── xcshareddata/
        │               └── IDEWorkspaceChecks.plist
        ├── ch13-1-v2/
        │   ├── ch13-1-v2/
        │   │   ├── AppDelegate.swift
        │   │   ├── Assets.xcassets/
        │   │   │   ├── AppIcon.appiconset/
        │   │   │   │   └── Contents.json
        │   │   │   ├── Contents.json
        │   │   │   └── placeholder.imageset/
        │   │   │       └── Contents.json
        │   │   ├── Base.lproj/
        │   │   │   ├── LaunchScreen.storyboard
        │   │   │   └── Main.storyboard
        │   │   ├── Info.plist
        │   │   ├── Message.swift
        │   │   ├── MessageCell.swift
        │   │   ├── MessageDataSource.swift
        │   │   ├── MessageTableViewController.swift
        │   │   └── ReusableIdentifier.swift
        │   └── ch13-1-v2.xcodeproj/
        │       ├── project.pbxproj
        │       └── project.xcworkspace/
        │           ├── contents.xcworkspacedata
        │           └── xcshareddata/
        │               └── IDEWorkspaceChecks.plist
        ├── ch13-2-v1/
        │   ├── ch13-2-v1/
        │   │   ├── AppDelegate.swift
        │   │   ├── Assets.xcassets/
        │   │   │   ├── AppIcon.appiconset/
        │   │   │   │   └── Contents.json
        │   │   │   └── Contents.json
        │   │   ├── Base.lproj/
        │   │   │   ├── LaunchScreen.storyboard
        │   │   │   └── Main.storyboard
        │   │   ├── Book.swift
        │   │   ├── BookDataSource.swift
        │   │   ├── BookTableViewController.swift
        │   │   ├── Info.plist
        │   │   ├── ReusableIdentifier.swift
        │   │   └── TextViewCell.swift
        │   └── ch13-2-v1.xcodeproj/
        │       ├── project.pbxproj
        │       └── project.xcworkspace/
        │           ├── contents.xcworkspacedata
        │           └── xcshareddata/
        │               └── IDEWorkspaceChecks.plist
        └── ch13-2-v2/
            ├── ch13-2-v2/
            │   ├── AppDelegate.swift
            │   ├── Assets.xcassets/
            │   │   ├── AppIcon.appiconset/
            │   │   │   └── Contents.json
            │   │   └── Contents.json
            │   ├── Base.lproj/
            │   │   └── LaunchScreen.storyboard
            │   ├── Book.swift
            │   ├── BookDataSource.swift
            │   ├── BookTableViewController.swift
            │   ├── Info.plist
            │   ├── ReusableIdentifier.swift
            │   └── TextViewCell.swift
            └── ch13-2-v2.xcodeproj/
                ├── project.pbxproj
                └── project.xcworkspace/
                    ├── contents.xcworkspacedata
                    └── xcshareddata/
                        └── IDEWorkspaceChecks.plist

================================================
FILE CONTENTS
================================================

================================================
FILE: LICENSE
================================================
BSD 3-Clause License

Copyright (c) 2018, Keith Harrison 
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this
  list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice,
  this list of conditions and the following disclaimer in the documentation
  and/or other materials provided with the distribution.

* Neither the name of the copyright holder nor the names of its
  contributors may be used to endorse or promote products derived from
  this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


================================================
FILE: README.md
================================================
# Modern Auto Layout

Sample code and solutions for my book on Auto Layout. Find out more about the book here:

+ [Modern Auto Layout](https://useyourloaf.com/autolayout/)


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/AppDelegate.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?
}


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/AppIcon.appiconset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "3x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "83.5x83.5",
      "scale" : "2x"
    },
    {
      "idiom" : "ios-marketing",
      "size" : "1024x1024",
      "scale" : "1x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/Contents.json
================================================
{
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/Diamond.imageset/Contents.json
================================================
{
  "images" : [
    {
      "filename" : "diamond.pdf",
      "idiom" : "universal"
    },
    {
      "height-class" : "regular",
      "idiom" : "universal"
    },
    {
      "idiom" : "universal",
      "width-class" : "regular"
    },
    {
      "filename" : "diamond200.pdf",
      "height-class" : "regular",
      "idiom" : "universal",
      "width-class" : "regular"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/Heart.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "heart.pdf"
    },
    {
      "idiom" : "universal",
      "height-class" : "regular"
    },
    {
      "idiom" : "universal",
      "width-class" : "regular"
    },
    {
      "idiom" : "universal",
      "filename" : "Heart200.pdf",
      "width-class" : "regular",
      "height-class" : "regular"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/Star.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "star.pdf"
    },
    {
      "idiom" : "universal",
      "height-class" : "regular"
    },
    {
      "idiom" : "universal",
      "width-class" : "regular"
    },
    {
      "idiom" : "universal",
      "filename" : "star200.pdf",
      "width-class" : "regular",
      "height-class" : "regular"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Base.lproj/LaunchScreen.storyboard
================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
    <dependencies>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--View Controller-->
        <scene sceneID="EHf-IW-A2E">
            <objects>
                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                    </view>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="53" y="375"/>
        </scene>
    </scenes>
</document>


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Base.lproj/Main.storyboard
================================================
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17156" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="brH-SO-swK">
    <device id="retina6_1" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17126"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="Stack View standard spacing" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--Adapt Stack-->
        <scene sceneID="tne-QT-ifu">
            <objects>
                <viewController id="BYZ-38-t0r" customClass="ViewController" customModule="AdaptAsset_v1" customModuleProvider="target" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
                        <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <subviews>
                            <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacingType="standard" translatesAutoresizingMaskIntoConstraints="NO" id="Atf-QH-GY9">
                                <rect key="frame" x="157" y="108" width="100" height="316"/>
                                <subviews>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Heart" translatesAutoresizingMaskIntoConstraints="NO" id="r3A-1t-UpZ">
                                        <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
                                    </imageView>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Star" translatesAutoresizingMaskIntoConstraints="NO" id="NN5-fc-cH9">
                                        <rect key="frame" x="0.0" y="108" width="100" height="100"/>
                                    </imageView>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Diamond" translatesAutoresizingMaskIntoConstraints="NO" id="Z2k-vu-cIh">
                                        <rect key="frame" x="0.0" y="216" width="100" height="100"/>
                                    </imageView>
                                </subviews>
                                <variation key="heightClass=compact" axis="horizontal"/>
                            </stackView>
                        </subviews>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <constraints>
                            <constraint firstItem="Atf-QH-GY9" firstAttribute="centerX" secondItem="8bC-Xf-vdC" secondAttribute="centerXWithinMargins" id="VEM-Xv-ZcE"/>
                            <constraint firstAttribute="topMargin" secondItem="Atf-QH-GY9" secondAttribute="top" id="hNc-XC-guy"/>
                        </constraints>
                        <directionalEdgeInsets key="directionalLayoutMargins" top="20" leading="20" bottom="20" trailing="20"/>
                    </view>
                    <navigationItem key="navigationItem" title="Adapt Stack" id="qGU-1x-EUR"/>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="1733" y="-579"/>
        </scene>
        <!--Navigation Controller-->
        <scene sceneID="uQw-Qa-owP">
            <objects>
                <navigationController automaticallyAdjustsScrollViewInsets="NO" id="brH-SO-swK" sceneMemberID="viewController">
                    <toolbarItems/>
                    <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="xT3-yo-jqK">
                        <rect key="frame" x="0.0" y="44" width="414" height="44"/>
                        <autoresizingMask key="autoresizingMask"/>
                    </navigationBar>
                    <nil name="viewControllers"/>
                    <connections>
                        <segue destination="BYZ-38-t0r" kind="relationship" relationship="rootViewController" id="dum-Cq-LdV"/>
                    </connections>
                </navigationController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="Znl-76-gs5" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="136.80000000000001" y="-564.46776611694156"/>
        </scene>
    </scenes>
    <resources>
        <image name="Diamond" width="100" height="100"/>
        <image name="Heart" width="100" height="100"/>
        <image name="Star" width="100" height="100"/>
    </resources>
</document>


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>$(DEVELOPMENT_LANGUAGE)</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>$(PRODUCT_NAME)</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleVersion</key>
	<string>1</string>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIMainStoryboardFile</key>
	<string>Main</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array>
		<string>armv7</string>
	</array>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
	<key>UISupportedInterfaceOrientations~ipad</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/ViewController.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

final class ViewController: UIViewController {
}


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 60;
	objects = {

/* Begin PBXBuildFile section */
		538F5B63211106A8004A6AFD /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 538F5B62211106A8004A6AFD /* AppDelegate.swift */; };
		538F5B65211106A8004A6AFD /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 538F5B64211106A8004A6AFD /* ViewController.swift */; };
		538F5B68211106A8004A6AFD /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 538F5B66211106A8004A6AFD /* Main.storyboard */; };
		538F5B6A211106A9004A6AFD /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 538F5B69211106A9004A6AFD /* Assets.xcassets */; };
		538F5B6D211106A9004A6AFD /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 538F5B6B211106A9004A6AFD /* LaunchScreen.storyboard */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		538F5B5F211106A8004A6AFD /* AdaptAsset-v1.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdaptAsset-v1.app"; sourceTree = BUILT_PRODUCTS_DIR; };
		538F5B62211106A8004A6AFD /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
		538F5B64211106A8004A6AFD /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
		538F5B67211106A8004A6AFD /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
		538F5B69211106A9004A6AFD /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
		538F5B6C211106A9004A6AFD /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
		538F5B6E211106A9004A6AFD /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		538F5B5C211106A8004A6AFD /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		538F5B56211106A8004A6AFD = {
			isa = PBXGroup;
			children = (
				538F5B61211106A8004A6AFD /* AdaptAsset-v1 */,
				538F5B60211106A8004A6AFD /* Products */,
			);
			sourceTree = "<group>";
		};
		538F5B60211106A8004A6AFD /* Products */ = {
			isa = PBXGroup;
			children = (
				538F5B5F211106A8004A6AFD /* AdaptAsset-v1.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		538F5B61211106A8004A6AFD /* AdaptAsset-v1 */ = {
			isa = PBXGroup;
			children = (
				538F5B62211106A8004A6AFD /* AppDelegate.swift */,
				538F5B64211106A8004A6AFD /* ViewController.swift */,
				538F5B66211106A8004A6AFD /* Main.storyboard */,
				538F5B69211106A9004A6AFD /* Assets.xcassets */,
				538F5B6B211106A9004A6AFD /* LaunchScreen.storyboard */,
				538F5B6E211106A9004A6AFD /* Info.plist */,
			);
			path = "AdaptAsset-v1";
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		538F5B5E211106A8004A6AFD /* AdaptAsset-v1 */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 538F5B71211106A9004A6AFD /* Build configuration list for PBXNativeTarget "AdaptAsset-v1" */;
			buildPhases = (
				538F5B5B211106A8004A6AFD /* Sources */,
				538F5B5C211106A8004A6AFD /* Frameworks */,
				538F5B5D211106A8004A6AFD /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "AdaptAsset-v1";
			productName = "AdaptAsset-v1";
			productReference = 538F5B5F211106A8004A6AFD /* AdaptAsset-v1.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		538F5B57211106A8004A6AFD /* Project object */ = {
			isa = PBXProject;
			attributes = {
				BuildIndependentTargetsInParallel = YES;
				LastSwiftUpdateCheck = 1000;
				LastUpgradeCheck = 1610;
				ORGANIZATIONNAME = "Keith Harrison";
				TargetAttributes = {
					538F5B5E211106A8004A6AFD = {
						CreatedOnToolsVersion = 10.0;
						LastSwiftMigration = 1020;
					};
				};
			};
			buildConfigurationList = 538F5B5A211106A8004A6AFD /* Build configuration list for PBXProject "AdaptAsset-v1" */;
			compatibilityVersion = "Xcode 15.0";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = 538F5B56211106A8004A6AFD;
			productRefGroup = 538F5B60211106A8004A6AFD /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				538F5B5E211106A8004A6AFD /* AdaptAsset-v1 */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		538F5B5D211106A8004A6AFD /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				538F5B6D211106A9004A6AFD /* LaunchScreen.storyboard in Resources */,
				538F5B6A211106A9004A6AFD /* Assets.xcassets in Resources */,
				538F5B68211106A8004A6AFD /* Main.storyboard in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		538F5B5B211106A8004A6AFD /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				538F5B65211106A8004A6AFD /* ViewController.swift in Sources */,
				538F5B63211106A8004A6AFD /* AppDelegate.swift in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
		538F5B66211106A8004A6AFD /* Main.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				538F5B67211106A8004A6AFD /* Base */,
			);
			name = Main.storyboard;
			sourceTree = "<group>";
		};
		538F5B6B211106A9004A6AFD /* LaunchScreen.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				538F5B6C211106A9004A6AFD /* Base */,
			);
			name = LaunchScreen.storyboard;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		538F5B6F211106A9004A6AFD /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
				MTL_FAST_MATH = YES;
				ONLY_ACTIVE_ARCH = YES;
				SDKROOT = iphoneos;
				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
			};
			name = Debug;
		};
		538F5B70211106A9004A6AFD /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = NO;
				MTL_FAST_MATH = YES;
				SDKROOT = iphoneos;
				SWIFT_COMPILATION_MODE = wholemodule;
				SWIFT_OPTIMIZATION_LEVEL = "-O";
				VALIDATE_PRODUCT = YES;
			};
			name = Release;
		};
		538F5B72211106A9004A6AFD /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptAsset-v1/Info.plist";
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptAsset-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Debug;
		};
		538F5B73211106A9004A6AFD /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptAsset-v1/Info.plist";
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptAsset-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		538F5B5A211106A8004A6AFD /* Build configuration list for PBXProject "AdaptAsset-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				538F5B6F211106A9004A6AFD /* Debug */,
				538F5B70211106A9004A6AFD /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		538F5B71211106A9004A6AFD /* Build configuration list for PBXNativeTarget "AdaptAsset-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				538F5B72211106A9004A6AFD /* Debug */,
				538F5B73211106A9004A6AFD /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 538F5B57211106A8004A6AFD /* Project object */;
}


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
   version = "1.0">
   <FileRef
      location = "self:">
   </FileRef>
</Workspace>


================================================
FILE: sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>IDEDidComputeMac32BitWarning</key>
	<true/>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/AppDelegate.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        window = UIWindow(frame: UIScreen.main.bounds)
        window?.backgroundColor = .white
        window?.rootViewController = ViewController()
        window?.makeKeyAndVisible()
        return true
    }
}


================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Assets.xcassets/AppIcon.appiconset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "3x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "83.5x83.5",
      "scale" : "2x"
    },
    {
      "idiom" : "ios-marketing",
      "size" : "1024x1024",
      "scale" : "1x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Assets.xcassets/Contents.json
================================================
{
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Assets.xcassets/buttonTemplate.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "blue-button.pdf",
      "resizing" : {
        "mode" : "9-part",
        "center" : {
          "mode" : "tile",
          "width" : 1,
          "height" : 1
        },
        "cap-insets" : {
          "bottom" : 4,
          "top" : 4,
          "right" : 5,
          "left" : 5
        }
      }
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "template-rendering-intent" : "template",
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Base.lproj/LaunchScreen.storyboard
================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
    <dependencies>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--View Controller-->
        <scene sceneID="EHf-IW-A2E">
            <objects>
                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                    </view>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="53" y="375"/>
        </scene>
    </scenes>
</document>


================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>$(DEVELOPMENT_LANGUAGE)</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>$(PRODUCT_NAME)</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleVersion</key>
	<string>1</string>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array>
		<string>armv7</string>
	</array>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
	<key>UISupportedInterfaceOrientations~ipad</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/ViewController.swift
================================================
//  Copyright © 2018-2024 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

final class ViewController: UIViewController {
    private lazy var deleteButton: UIButton = {
        let title = NSLocalizedString("Delete All", comment: "Delete button")
        let button = UIButton.customButton(title: title, titleColor: .white, tintColor: .red, background: UIImage(named: "buttonTemplate"))
        button.addTarget(self, action: #selector(deleteAction(_:)), for: .touchUpInside)
        return button
    }()

    private lazy var completeButton: UIButton = {
        let title = NSLocalizedString("Mark Complete", comment: "Mark Complete button")
        let button = UIButton.customButton(title: title, titleColor: .white, tintColor: .green, background: UIImage(named: "buttonTemplate"))
        button.addTarget(self, action: #selector(okAction(_:)), for: .touchUpInside)
        return button
    }()

    override func viewDidLoad() {
        super.viewDidLoad()
        setupView()
    }

    override func viewIsAppearing(_ animated: Bool) {
        super.viewIsAppearing(animated)
        activateConstraints(for: view.bounds.width)
    }
    
    private let leadingGuide = UILayoutGuide()
    private let middleGuide = UILayoutGuide()
    private let trailingGuide = UILayoutGuide()

    private lazy var commonConstraints: [NSLayoutConstraint] = {
        let marginGuide = view.layoutMarginsGuide
        return [
            deleteButton.topAnchor.constraint(equalTo: marginGuide.topAnchor),
            deleteButton.widthAnchor.constraint(equalTo: completeButton.widthAnchor)
        ]
    }()

    private lazy var wideConstraints: [NSLayoutConstraint] = {
        let marginGuide = view.layoutMarginsGuide
        return [
            completeButton.topAnchor.constraint(equalTo: marginGuide.topAnchor),

            leadingGuide.widthAnchor.constraint(equalTo: middleGuide.widthAnchor),
            leadingGuide.widthAnchor.constraint(equalTo: trailingGuide.widthAnchor),

            marginGuide.leadingAnchor.constraint(equalTo: leadingGuide.leadingAnchor),
            leadingGuide.trailingAnchor.constraint(equalTo: deleteButton.leadingAnchor),
            deleteButton.trailingAnchor.constraint(equalTo: middleGuide.leadingAnchor),
            middleGuide.trailingAnchor.constraint(equalTo: completeButton.leadingAnchor),
            completeButton.trailingAnchor.constraint(equalTo: trailingGuide.leadingAnchor),
            trailingGuide.trailingAnchor.constraint(equalTo: marginGuide.trailingAnchor)
        ]
    }()

    private lazy var narrowConstraints: [NSLayoutConstraint] = {
        let marginGuide = view.layoutMarginsGuide
        return [
            deleteButton.centerXAnchor.constraint(equalTo: marginGuide.centerXAnchor),
            completeButton.centerXAnchor.constraint(equalTo: marginGuide.centerXAnchor),
            completeButton.topAnchor.constraint(equalToSystemSpacingBelow: deleteButton.bottomAnchor, multiplier: 2.0)
        ]
    }()

    private enum ViewMetrics {
        static let margin: CGFloat = 20.0
        static let narrowLayoutLimit: CGFloat = 500.0
    }

    private func setupView() {
        view.directionalLayoutMargins = NSDirectionalEdgeInsets(top: ViewMetrics.margin, leading: ViewMetrics.margin, bottom: ViewMetrics.margin, trailing: ViewMetrics.margin)
        view.addSubview(deleteButton)
        view.addSubview(completeButton)

        view.addLayoutGuide(leadingGuide)
        view.addLayoutGuide(middleGuide)
        view.addLayoutGuide(trailingGuide)

        NSLayoutConstraint.activate(commonConstraints)
    }

    private func activateConstraints(for width: CGFloat) {
        if width > ViewMetrics.narrowLayoutLimit {
            NSLayoutConstraint.deactivate(narrowConstraints)
            NSLayoutConstraint.activate(wideConstraints)
        } else {
            NSLayoutConstraint.deactivate(wideConstraints)
            NSLayoutConstraint.activate(narrowConstraints)
        }
    }
}

extension ViewController {
    override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
        super.viewWillTransition(to: size, with: coordinator)
        if size != view.bounds.size {
            activateConstraints(for: size.width)
        }
    }
}

extension ViewController {
    @objc private func deleteAction(_ sender: UIButton) {
        print("Delete")
    }

    @objc private func okAction(_ sender: UIButton) {
        print("Mark complete")
    }
}

extension UIButton {
    static func customButton(title: String, titleColor: UIColor, tintColor: UIColor, background: UIImage?) -> UIButton {
        let button = UIButton(type: .custom)
        button.translatesAutoresizingMaskIntoConstraints = false
        button.setTitle(title, for: .normal)
        button.setTitleColor(titleColor, for: .normal)
        button.titleLabel?.font = UIFont.systemFont(ofSize: 30.0)
        button.setBackgroundImage(background, for: .normal)
        button.tintColor = tintColor
        button.contentEdgeInsets = UIEdgeInsets(top: 8, left: 16, bottom: 8, right: 16)
        return button
    }
}


================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 60;
	objects = {

/* Begin PBXBuildFile section */
		5329339921139BCB004A722A /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5329339821139BCB004A722A /* AppDelegate.swift */; };
		5329339B21139BCB004A722A /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5329339A21139BCB004A722A /* ViewController.swift */; };
		5329339D21139BCB004A722A /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 5329339C21139BCB004A722A /* Assets.xcassets */; };
		532933A021139BCB004A722A /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5329339E21139BCB004A722A /* LaunchScreen.storyboard */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		5329339521139BCB004A722A /* AdaptConstraints-v1.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdaptConstraints-v1.app"; sourceTree = BUILT_PRODUCTS_DIR; };
		5329339821139BCB004A722A /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
		5329339A21139BCB004A722A /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
		5329339C21139BCB004A722A /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
		5329339F21139BCB004A722A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
		532933A121139BCB004A722A /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		5329339221139BCB004A722A /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		5329338C21139BCB004A722A = {
			isa = PBXGroup;
			children = (
				5329339721139BCB004A722A /* AdaptConstraints-v1 */,
				5329339621139BCB004A722A /* Products */,
			);
			sourceTree = "<group>";
		};
		5329339621139BCB004A722A /* Products */ = {
			isa = PBXGroup;
			children = (
				5329339521139BCB004A722A /* AdaptConstraints-v1.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		5329339721139BCB004A722A /* AdaptConstraints-v1 */ = {
			isa = PBXGroup;
			children = (
				5329339821139BCB004A722A /* AppDelegate.swift */,
				5329339A21139BCB004A722A /* ViewController.swift */,
				5329339C21139BCB004A722A /* Assets.xcassets */,
				5329339E21139BCB004A722A /* LaunchScreen.storyboard */,
				532933A121139BCB004A722A /* Info.plist */,
			);
			path = "AdaptConstraints-v1";
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		5329339421139BCB004A722A /* AdaptConstraints-v1 */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 532933A421139BCB004A722A /* Build configuration list for PBXNativeTarget "AdaptConstraints-v1" */;
			buildPhases = (
				5329339121139BCB004A722A /* Sources */,
				5329339221139BCB004A722A /* Frameworks */,
				5329339321139BCB004A722A /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "AdaptConstraints-v1";
			productName = "AdaptConstraints-v1";
			productReference = 5329339521139BCB004A722A /* AdaptConstraints-v1.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		5329338D21139BCB004A722A /* Project object */ = {
			isa = PBXProject;
			attributes = {
				BuildIndependentTargetsInParallel = YES;
				LastSwiftUpdateCheck = 1000;
				LastUpgradeCheck = 1610;
				ORGANIZATIONNAME = "Keith Harrison";
				TargetAttributes = {
					5329339421139BCB004A722A = {
						CreatedOnToolsVersion = 10.0;
						LastSwiftMigration = 1020;
					};
				};
			};
			buildConfigurationList = 5329339021139BCB004A722A /* Build configuration list for PBXProject "AdaptConstraints-v1" */;
			compatibilityVersion = "Xcode 15.0";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = 5329338C21139BCB004A722A;
			productRefGroup = 5329339621139BCB004A722A /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				5329339421139BCB004A722A /* AdaptConstraints-v1 */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		5329339321139BCB004A722A /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				5329339D21139BCB004A722A /* Assets.xcassets in Resources */,
				532933A021139BCB004A722A /* LaunchScreen.storyboard in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		5329339121139BCB004A722A /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				5329339B21139BCB004A722A /* ViewController.swift in Sources */,
				5329339921139BCB004A722A /* AppDelegate.swift in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
		5329339E21139BCB004A722A /* LaunchScreen.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				5329339F21139BCB004A722A /* Base */,
			);
			name = LaunchScreen.storyboard;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		532933A221139BCB004A722A /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
				MTL_FAST_MATH = YES;
				ONLY_ACTIVE_ARCH = YES;
				SDKROOT = iphoneos;
				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
			};
			name = Debug;
		};
		532933A321139BCB004A722A /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = NO;
				MTL_FAST_MATH = YES;
				SDKROOT = iphoneos;
				SWIFT_COMPILATION_MODE = wholemodule;
				SWIFT_OPTIMIZATION_LEVEL = "-O";
				VALIDATE_PRODUCT = YES;
			};
			name = Release;
		};
		532933A521139BCB004A722A /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptConstraints-v1/Info.plist";
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptConstraints-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Debug;
		};
		532933A621139BCB004A722A /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptConstraints-v1/Info.plist";
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptConstraints-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		5329339021139BCB004A722A /* Build configuration list for PBXProject "AdaptConstraints-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				532933A221139BCB004A722A /* Debug */,
				532933A321139BCB004A722A /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		532933A421139BCB004A722A /* Build configuration list for PBXNativeTarget "AdaptConstraints-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				532933A521139BCB004A722A /* Debug */,
				532933A621139BCB004A722A /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 5329338D21139BCB004A722A /* Project object */;
}


================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
   version = "1.0">
   <FileRef
      location = "self:">
   </FileRef>
</Workspace>


================================================
FILE: sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>IDEDidComputeMac32BitWarning</key>
	<true/>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/AppDelegate.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?
}


================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Assets.xcassets/AppIcon.appiconset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "3x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "83.5x83.5",
      "scale" : "2x"
    },
    {
      "idiom" : "ios-marketing",
      "size" : "1024x1024",
      "scale" : "1x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Assets.xcassets/Contents.json
================================================
{
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Assets.xcassets/Sun.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "Sun.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Base.lproj/LaunchScreen.storyboard
================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
    <dependencies>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--View Controller-->
        <scene sceneID="EHf-IW-A2E">
            <objects>
                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                    </view>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="53" y="375"/>
        </scene>
    </scenes>
</document>


================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Base.lproj/Main.storyboard
================================================
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="22155" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="xzb-Lv-Rzq">
    <device id="retina4_7" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22131"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--Control Panel-->
        <scene sceneID="tne-QT-ifu">
            <objects>
                <viewController id="BYZ-38-t0r" customClass="ViewController" customModule="AdaptLayout_v1" customModuleProvider="target" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" layoutMarginsFollowReadableWidth="YES" id="8bC-Xf-vdC">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <subviews>
                            <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" horizontalCompressionResistancePriority="751" image="Sun" translatesAutoresizingMaskIntoConstraints="NO" id="3VK-HT-pM3" userLabel="ImageView">
                                <rect key="frame" x="20" y="133" width="335" height="150"/>
                            </imageView>
                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3n4-dp-OeE" userLabel="Button">
                                <rect key="frame" x="20" y="84" width="335" height="41"/>
                                <color key="backgroundColor" red="0.0" green="0.97680455450000003" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                <fontDescription key="fontDescription" type="system" pointSize="24"/>
                                <state key="normal" title="Solar Panel">
                                    <color key="titleColor" systemColor="labelColor"/>
                                </state>
                            </button>
                        </subviews>
                        <viewLayoutGuide key="safeArea" id="WHo-rN-VbS"/>
                        <color key="backgroundColor" red="0.46202266219999999" green="0.83828371759999998" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <constraints>
                            <constraint firstItem="3n4-dp-OeE" firstAttribute="top" secondItem="8bC-Xf-vdC" secondAttribute="topMargin" id="OyZ-Zz-PTq"/>
                            <constraint firstItem="3VK-HT-pM3" firstAttribute="top" secondItem="3n4-dp-OeE" secondAttribute="bottom" constant="8" symbolic="YES" id="Uth-J1-XIV"/>
                            <constraint firstItem="3VK-HT-pM3" firstAttribute="trailing" secondItem="8bC-Xf-vdC" secondAttribute="trailingMargin" id="VzS-dm-txy"/>
                            <constraint firstItem="3VK-HT-pM3" firstAttribute="centerY" secondItem="3n4-dp-OeE" secondAttribute="centerY" id="Whl-sa-2Pf"/>
                            <constraint firstItem="3VK-HT-pM3" firstAttribute="top" secondItem="8bC-Xf-vdC" secondAttribute="topMargin" id="gN0-bM-UXp"/>
                            <constraint firstItem="3n4-dp-OeE" firstAttribute="leading" secondItem="8bC-Xf-vdC" secondAttribute="leadingMargin" id="iFI-xb-GC5"/>
                            <constraint firstItem="3n4-dp-OeE" firstAttribute="leading" secondItem="3VK-HT-pM3" secondAttribute="trailing" constant="8" symbolic="YES" id="nWD-ur-zJL"/>
                            <constraint firstItem="3VK-HT-pM3" firstAttribute="leading" secondItem="8bC-Xf-vdC" secondAttribute="leadingMargin" id="yeJ-63-85P"/>
                            <constraint firstItem="3n4-dp-OeE" firstAttribute="trailing" secondItem="8bC-Xf-vdC" secondAttribute="trailingMargin" id="zbQ-Gj-vwy"/>
                        </constraints>
                        <directionalEdgeInsets key="directionalLayoutMargins" top="20" leading="20" bottom="20" trailing="20"/>
                        <variation key="default">
                            <mask key="constraints">
                                <exclude reference="iFI-xb-GC5"/>
                                <exclude reference="OyZ-Zz-PTq"/>
                                <exclude reference="nWD-ur-zJL"/>
                                <exclude reference="VzS-dm-txy"/>
                                <exclude reference="gN0-bM-UXp"/>
                                <exclude reference="Whl-sa-2Pf"/>
                                <exclude reference="Uth-J1-XIV"/>
                            </mask>
                        </variation>
                        <variation key="heightClass=compact">
                            <mask key="constraints">
                                <include reference="nWD-ur-zJL"/>
                                <include reference="gN0-bM-UXp"/>
                                <include reference="Whl-sa-2Pf"/>
                            </mask>
                        </variation>
                        <variation key="heightClass=regular">
                            <mask key="constraints">
                                <include reference="iFI-xb-GC5"/>
                                <include reference="OyZ-Zz-PTq"/>
                                <include reference="VzS-dm-txy"/>
                                <include reference="Uth-J1-XIV"/>
                            </mask>
                        </variation>
                    </view>
                    <navigationItem key="navigationItem" title="Control Panel" id="8eY-Bc-epS"/>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="935" y="-564"/>
        </scene>
        <!--Navigation Controller-->
        <scene sceneID="JNl-kr-3jO">
            <objects>
                <navigationController automaticallyAdjustsScrollViewInsets="NO" id="xzb-Lv-Rzq" sceneMemberID="viewController">
                    <toolbarItems/>
                    <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="5TP-OG-ZBP">
                        <rect key="frame" x="0.0" y="20" width="375" height="44"/>
                        <autoresizingMask key="autoresizingMask"/>
                    </navigationBar>
                    <nil name="viewControllers"/>
                    <connections>
                        <segue destination="BYZ-38-t0r" kind="relationship" relationship="rootViewController" id="n5D-vb-uUh"/>
                    </connections>
                </navigationController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="IBc-fI-mQg" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="136.80000000000001" y="-564.46776611694156"/>
        </scene>
    </scenes>
    <resources>
        <image name="Sun" width="150" height="150"/>
        <systemColor name="labelColor">
            <color white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
        </systemColor>
    </resources>
</document>


================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>$(DEVELOPMENT_LANGUAGE)</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>$(PRODUCT_NAME)</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleVersion</key>
	<string>1</string>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIMainStoryboardFile</key>
	<string>Main</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array>
		<string>armv7</string>
	</array>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
	<key>UISupportedInterfaceOrientations~ipad</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/ViewController.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

final class ViewController: UIViewController {
}


================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 60;
	objects = {

/* Begin PBXBuildFile section */
		5314569121023DB100618E20 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5314569021023DB100618E20 /* AppDelegate.swift */; };
		5314569321023DB100618E20 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5314569221023DB100618E20 /* ViewController.swift */; };
		5314569621023DB100618E20 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5314569421023DB100618E20 /* Main.storyboard */; };
		5314569821023DB100618E20 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 5314569721023DB100618E20 /* Assets.xcassets */; };
		5314569B21023DB100618E20 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5314569921023DB100618E20 /* LaunchScreen.storyboard */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		5314568D21023DB100618E20 /* AdaptLayout-v1.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdaptLayout-v1.app"; sourceTree = BUILT_PRODUCTS_DIR; };
		5314569021023DB100618E20 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
		5314569221023DB100618E20 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
		5314569521023DB100618E20 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
		5314569721023DB100618E20 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
		5314569A21023DB100618E20 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
		5314569C21023DB100618E20 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		5314568A21023DB100618E20 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		5314568421023DB100618E20 = {
			isa = PBXGroup;
			children = (
				5314568F21023DB100618E20 /* AdaptLayout-v1 */,
				5314568E21023DB100618E20 /* Products */,
			);
			sourceTree = "<group>";
		};
		5314568E21023DB100618E20 /* Products */ = {
			isa = PBXGroup;
			children = (
				5314568D21023DB100618E20 /* AdaptLayout-v1.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		5314568F21023DB100618E20 /* AdaptLayout-v1 */ = {
			isa = PBXGroup;
			children = (
				5314569021023DB100618E20 /* AppDelegate.swift */,
				5314569221023DB100618E20 /* ViewController.swift */,
				5314569421023DB100618E20 /* Main.storyboard */,
				5314569721023DB100618E20 /* Assets.xcassets */,
				5314569921023DB100618E20 /* LaunchScreen.storyboard */,
				5314569C21023DB100618E20 /* Info.plist */,
			);
			path = "AdaptLayout-v1";
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		5314568C21023DB100618E20 /* AdaptLayout-v1 */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 5314569F21023DB100618E20 /* Build configuration list for PBXNativeTarget "AdaptLayout-v1" */;
			buildPhases = (
				5314568921023DB100618E20 /* Sources */,
				5314568A21023DB100618E20 /* Frameworks */,
				5314568B21023DB100618E20 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "AdaptLayout-v1";
			productName = "AdaptLayout-v1";
			productReference = 5314568D21023DB100618E20 /* AdaptLayout-v1.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		5314568521023DB100618E20 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				BuildIndependentTargetsInParallel = YES;
				LastSwiftUpdateCheck = 1000;
				LastUpgradeCheck = 1610;
				ORGANIZATIONNAME = "Keith Harrison";
				TargetAttributes = {
					5314568C21023DB100618E20 = {
						CreatedOnToolsVersion = 10.0;
						LastSwiftMigration = 1020;
					};
				};
			};
			buildConfigurationList = 5314568821023DB100618E20 /* Build configuration list for PBXProject "AdaptLayout-v1" */;
			compatibilityVersion = "Xcode 15.0";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = 5314568421023DB100618E20;
			productRefGroup = 5314568E21023DB100618E20 /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				5314568C21023DB100618E20 /* AdaptLayout-v1 */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		5314568B21023DB100618E20 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				5314569B21023DB100618E20 /* LaunchScreen.storyboard in Resources */,
				5314569821023DB100618E20 /* Assets.xcassets in Resources */,
				5314569621023DB100618E20 /* Main.storyboard in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		5314568921023DB100618E20 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				5314569321023DB100618E20 /* ViewController.swift in Sources */,
				5314569121023DB100618E20 /* AppDelegate.swift in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
		5314569421023DB100618E20 /* Main.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				5314569521023DB100618E20 /* Base */,
			);
			name = Main.storyboard;
			sourceTree = "<group>";
		};
		5314569921023DB100618E20 /* LaunchScreen.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				5314569A21023DB100618E20 /* Base */,
			);
			name = LaunchScreen.storyboard;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		5314569D21023DB100618E20 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
				MTL_FAST_MATH = YES;
				ONLY_ACTIVE_ARCH = YES;
				SDKROOT = iphoneos;
				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
			};
			name = Debug;
		};
		5314569E21023DB100618E20 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = NO;
				MTL_FAST_MATH = YES;
				SDKROOT = iphoneos;
				SWIFT_COMPILATION_MODE = wholemodule;
				SWIFT_OPTIMIZATION_LEVEL = "-O";
				VALIDATE_PRODUCT = YES;
			};
			name = Release;
		};
		531456A021023DB100618E20 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptLayout-v1/Info.plist";
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptLayout-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Debug;
		};
		531456A121023DB100618E20 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptLayout-v1/Info.plist";
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptLayout-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		5314568821023DB100618E20 /* Build configuration list for PBXProject "AdaptLayout-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				5314569D21023DB100618E20 /* Debug */,
				5314569E21023DB100618E20 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		5314569F21023DB100618E20 /* Build configuration list for PBXNativeTarget "AdaptLayout-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				531456A021023DB100618E20 /* Debug */,
				531456A121023DB100618E20 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 5314568521023DB100618E20 /* Project object */;
}


================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
   version = "1.0">
   <FileRef
      location = "self:">
   </FileRef>
</Workspace>


================================================
FILE: sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>IDEDidComputeMac32BitWarning</key>
	<true/>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/AppDelegate.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?
}


================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/AppIcon.appiconset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "3x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "83.5x83.5",
      "scale" : "2x"
    },
    {
      "idiom" : "ios-marketing",
      "size" : "1024x1024",
      "scale" : "1x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/Contents.json
================================================
{
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/Diamond.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "diamond.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/Heart.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "heart.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/Star.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "star.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Base.lproj/LaunchScreen.storyboard
================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
    <dependencies>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--View Controller-->
        <scene sceneID="EHf-IW-A2E">
            <objects>
                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                    </view>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="53" y="375"/>
        </scene>
    </scenes>
</document>


================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Base.lproj/Main.storyboard
================================================
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14313.3.2" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="1ft-Jb-RCr">
    <device id="retina4_7" orientation="portrait">
        <adaptation id="fullscreen"/>
    </device>
    <dependencies>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14283.1"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="Stack View standard spacing" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--Adapt Stack-->
        <scene sceneID="tne-QT-ifu">
            <objects>
                <viewController id="BYZ-38-t0r" customClass="ViewController" customModule="AdaptSize_v1" customModuleProvider="target" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <subviews>
                            <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacingType="standard" translatesAutoresizingMaskIntoConstraints="NO" id="zIr-J7-Brz">
                                <rect key="frame" x="137.5" y="84" width="100" height="316"/>
                                <subviews>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Heart" translatesAutoresizingMaskIntoConstraints="NO" id="lEa-rR-LeB">
                                        <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
                                    </imageView>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Star" translatesAutoresizingMaskIntoConstraints="NO" id="Z4m-Lu-oLi">
                                        <rect key="frame" x="0.0" y="108" width="100" height="100"/>
                                    </imageView>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Diamond" translatesAutoresizingMaskIntoConstraints="NO" id="sDN-s2-vBX">
                                        <rect key="frame" x="0.0" y="216" width="100" height="100"/>
                                    </imageView>
                                </subviews>
                            </stackView>
                        </subviews>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <constraints>
                            <constraint firstItem="zIr-J7-Brz" firstAttribute="centerX" secondItem="8bC-Xf-vdC" secondAttribute="centerXWithinMargins" id="Hbo-cu-nW3"/>
                            <constraint firstAttribute="topMargin" secondItem="zIr-J7-Brz" secondAttribute="top" id="SPI-zK-P4Z"/>
                        </constraints>
                        <directionalEdgeInsets key="directionalLayoutMargins" top="20" leading="20" bottom="20" trailing="20"/>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                    </view>
                    <navigationItem key="navigationItem" title="Adapt Stack" id="4Rk-TB-Yre"/>
                    <connections>
                        <outlet property="stackView" destination="zIr-J7-Brz" id="QtN-VV-yGw"/>
                    </connections>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="833" y="-564"/>
        </scene>
        <!--Navigation Controller-->
        <scene sceneID="mBC-fN-o5F">
            <objects>
                <navigationController automaticallyAdjustsScrollViewInsets="NO" id="1ft-Jb-RCr" sceneMemberID="viewController">
                    <toolbarItems/>
                    <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="ySK-cs-rD8">
                        <rect key="frame" x="0.0" y="20" width="375" height="44"/>
                        <autoresizingMask key="autoresizingMask"/>
                    </navigationBar>
                    <nil name="viewControllers"/>
                    <connections>
                        <segue destination="BYZ-38-t0r" kind="relationship" relationship="rootViewController" id="fxo-TB-Rhl"/>
                    </connections>
                </navigationController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="CIP-3g-F9K" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="136.80000000000001" y="-564.46776611694156"/>
        </scene>
    </scenes>
    <resources>
        <image name="Diamond" width="100" height="100"/>
        <image name="Heart" width="100" height="100"/>
        <image name="Star" width="100" height="100"/>
    </resources>
</document>


================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>$(DEVELOPMENT_LANGUAGE)</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>$(PRODUCT_NAME)</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleVersion</key>
	<string>1</string>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIMainStoryboardFile</key>
	<string>Main</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array>
		<string>armv7</string>
	</array>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
	<key>UISupportedInterfaceOrientations~ipad</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/ViewController.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

final class ViewController: UIViewController {
    @IBOutlet private var stackView: UIStackView!

//    private var initialSetupDone = false
//
//    override func viewWillLayoutSubviews() {
//        super.viewWillLayoutSubviews()
//        if !initialSetupDone {
//            configureView(for: view.bounds.size)
//            initialSetupDone = true
//        }
//    }

    
    // viewIsAppearing was added in iOS 17, but is
    // back deployable to iOS 13. It's a great place
    // for configuring the view as it's called only
    // once after the view is added to the view hierarchy
    // so we can rely on the size being correct
    override func viewIsAppearing(_ animated: Bool) {
        super.viewIsAppearing(animated)
        configureView(for: view.bounds.size)
    }
    
    private func configureView(for size: CGSize) {
        if size.width > size.height {
            stackView.axis = .horizontal
        } else {
            stackView.axis = .vertical
        }
    }
}

extension ViewController {
    private enum AnimationMetrics {
        static let duration: TimeInterval = 0.3
        static let transformScale: CGFloat = 1.25
    }

    override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
        super.viewWillTransition(to: size, with: coordinator)

        // Device can rotate 180 degrees.
        if size != view.bounds.size {
            configureView(for: size)
            animateStack(with: coordinator)
        }
    }

    private func animateStack(with coordinator: UIViewControllerTransitionCoordinator) {
        coordinator.animate(alongsideTransition: { _ in
            self.stackView.transform = CGAffineTransform(scaleX: AnimationMetrics.transformScale, y: AnimationMetrics.transformScale)
        }, completion: { _ in
            UIViewPropertyAnimator.runningPropertyAnimator(withDuration: AnimationMetrics.duration, delay: 0, options: [], animations: {
                self.stackView.transform = .identity
            })
        })
    }
}


================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 60;
	objects = {

/* Begin PBXBuildFile section */
		53E94E582112FB6D00F4058E /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E94E572112FB6D00F4058E /* AppDelegate.swift */; };
		53E94E5A2112FB6D00F4058E /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E94E592112FB6D00F4058E /* ViewController.swift */; };
		53E94E5D2112FB6D00F4058E /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 53E94E5B2112FB6D00F4058E /* Main.storyboard */; };
		53E94E5F2112FB6D00F4058E /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 53E94E5E2112FB6D00F4058E /* Assets.xcassets */; };
		53E94E622112FB6D00F4058E /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 53E94E602112FB6D00F4058E /* LaunchScreen.storyboard */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		53E94E542112FB6D00F4058E /* AdaptSize-v1.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdaptSize-v1.app"; sourceTree = BUILT_PRODUCTS_DIR; };
		53E94E572112FB6D00F4058E /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
		53E94E592112FB6D00F4058E /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
		53E94E5C2112FB6D00F4058E /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
		53E94E5E2112FB6D00F4058E /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
		53E94E612112FB6D00F4058E /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
		53E94E632112FB6D00F4058E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		53E94E512112FB6D00F4058E /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		53E94E4B2112FB6D00F4058E = {
			isa = PBXGroup;
			children = (
				53E94E562112FB6D00F4058E /* AdaptSize-v1 */,
				53E94E552112FB6D00F4058E /* Products */,
			);
			sourceTree = "<group>";
		};
		53E94E552112FB6D00F4058E /* Products */ = {
			isa = PBXGroup;
			children = (
				53E94E542112FB6D00F4058E /* AdaptSize-v1.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		53E94E562112FB6D00F4058E /* AdaptSize-v1 */ = {
			isa = PBXGroup;
			children = (
				53E94E572112FB6D00F4058E /* AppDelegate.swift */,
				53E94E592112FB6D00F4058E /* ViewController.swift */,
				53E94E5B2112FB6D00F4058E /* Main.storyboard */,
				53E94E5E2112FB6D00F4058E /* Assets.xcassets */,
				53E94E602112FB6D00F4058E /* LaunchScreen.storyboard */,
				53E94E632112FB6D00F4058E /* Info.plist */,
			);
			path = "AdaptSize-v1";
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		53E94E532112FB6D00F4058E /* AdaptSize-v1 */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 53E94E662112FB6D00F4058E /* Build configuration list for PBXNativeTarget "AdaptSize-v1" */;
			buildPhases = (
				53E94E502112FB6D00F4058E /* Sources */,
				53E94E512112FB6D00F4058E /* Frameworks */,
				53E94E522112FB6D00F4058E /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "AdaptSize-v1";
			productName = "AdaptSize-v1";
			productReference = 53E94E542112FB6D00F4058E /* AdaptSize-v1.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		53E94E4C2112FB6D00F4058E /* Project object */ = {
			isa = PBXProject;
			attributes = {
				BuildIndependentTargetsInParallel = YES;
				LastSwiftUpdateCheck = 1000;
				LastUpgradeCheck = 1610;
				ORGANIZATIONNAME = "Keith Harrison";
				TargetAttributes = {
					53E94E532112FB6D00F4058E = {
						CreatedOnToolsVersion = 10.0;
						LastSwiftMigration = 1020;
					};
				};
			};
			buildConfigurationList = 53E94E4F2112FB6D00F4058E /* Build configuration list for PBXProject "AdaptSize-v1" */;
			compatibilityVersion = "Xcode 15.0";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = 53E94E4B2112FB6D00F4058E;
			productRefGroup = 53E94E552112FB6D00F4058E /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				53E94E532112FB6D00F4058E /* AdaptSize-v1 */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		53E94E522112FB6D00F4058E /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				53E94E622112FB6D00F4058E /* LaunchScreen.storyboard in Resources */,
				53E94E5F2112FB6D00F4058E /* Assets.xcassets in Resources */,
				53E94E5D2112FB6D00F4058E /* Main.storyboard in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		53E94E502112FB6D00F4058E /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				53E94E5A2112FB6D00F4058E /* ViewController.swift in Sources */,
				53E94E582112FB6D00F4058E /* AppDelegate.swift in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
		53E94E5B2112FB6D00F4058E /* Main.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				53E94E5C2112FB6D00F4058E /* Base */,
			);
			name = Main.storyboard;
			sourceTree = "<group>";
		};
		53E94E602112FB6D00F4058E /* LaunchScreen.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				53E94E612112FB6D00F4058E /* Base */,
			);
			name = LaunchScreen.storyboard;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		53E94E642112FB6D00F4058E /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
				MTL_FAST_MATH = YES;
				ONLY_ACTIVE_ARCH = YES;
				SDKROOT = iphoneos;
				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
			};
			name = Debug;
		};
		53E94E652112FB6D00F4058E /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = NO;
				MTL_FAST_MATH = YES;
				SDKROOT = iphoneos;
				SWIFT_COMPILATION_MODE = wholemodule;
				SWIFT_OPTIMIZATION_LEVEL = "-O";
				VALIDATE_PRODUCT = YES;
			};
			name = Release;
		};
		53E94E672112FB6D00F4058E /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptSize-v1/Info.plist";
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptSize-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Debug;
		};
		53E94E682112FB6D00F4058E /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptSize-v1/Info.plist";
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptSize-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		53E94E4F2112FB6D00F4058E /* Build configuration list for PBXProject "AdaptSize-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				53E94E642112FB6D00F4058E /* Debug */,
				53E94E652112FB6D00F4058E /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		53E94E662112FB6D00F4058E /* Build configuration list for PBXNativeTarget "AdaptSize-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				53E94E672112FB6D00F4058E /* Debug */,
				53E94E682112FB6D00F4058E /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 53E94E4C2112FB6D00F4058E /* Project object */;
}


================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
   version = "1.0">
   <FileRef
      location = "self:">
   </FileRef>
</Workspace>


================================================
FILE: sample-code/adaptability/AdaptSize-v1/AdaptSize-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>IDEDidComputeMac32BitWarning</key>
	<true/>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/AppDelegate.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?
}


================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/AppIcon.appiconset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "3x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "83.5x83.5",
      "scale" : "2x"
    },
    {
      "idiom" : "ios-marketing",
      "size" : "1024x1024",
      "scale" : "1x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/Contents.json
================================================
{
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/Diamond.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "diamond.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/Heart.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "heart.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/Star.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "star.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Base.lproj/LaunchScreen.storyboard
================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
    <dependencies>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--View Controller-->
        <scene sceneID="EHf-IW-A2E">
            <objects>
                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                    </view>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="53" y="375"/>
        </scene>
    </scenes>
</document>


================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Base.lproj/Main.storyboard
================================================
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17156" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="O2l-b7-FFo">
    <device id="retina6_1" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17126"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="Stack View standard spacing" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--Adapt Stack-->
        <scene sceneID="tne-QT-ifu">
            <objects>
                <viewController id="BYZ-38-t0r" customClass="ViewController" customModule="AdaptStack_v1" customModuleProvider="target" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
                        <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <subviews>
                            <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacingType="standard" translatesAutoresizingMaskIntoConstraints="NO" id="pmh-fm-GXe">
                                <rect key="frame" x="157" y="108" width="100" height="316"/>
                                <subviews>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Heart" translatesAutoresizingMaskIntoConstraints="NO" id="VAD-UZ-JYh">
                                        <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
                                    </imageView>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Star" translatesAutoresizingMaskIntoConstraints="NO" id="16x-je-rOb">
                                        <rect key="frame" x="0.0" y="108" width="100" height="100"/>
                                    </imageView>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Diamond" translatesAutoresizingMaskIntoConstraints="NO" id="pJz-KD-SIQ">
                                        <rect key="frame" x="0.0" y="216" width="100" height="100"/>
                                    </imageView>
                                </subviews>
                                <variation key="heightClass=compact" axis="horizontal"/>
                            </stackView>
                        </subviews>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                        <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                        <constraints>
                            <constraint firstAttribute="topMargin" secondItem="pmh-fm-GXe" secondAttribute="top" id="2sl-YQ-sBH"/>
                            <constraint firstItem="pmh-fm-GXe" firstAttribute="centerX" secondItem="8bC-Xf-vdC" secondAttribute="centerXWithinMargins" id="eYr-RJ-N4B"/>
                        </constraints>
                        <directionalEdgeInsets key="directionalLayoutMargins" top="20" leading="20" bottom="20" trailing="20"/>
                    </view>
                    <navigationItem key="navigationItem" title="Adapt Stack" id="AzI-QU-j4S"/>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="1662" y="-565"/>
        </scene>
        <!--Navigation Controller-->
        <scene sceneID="efv-Gn-VnI">
            <objects>
                <navigationController automaticallyAdjustsScrollViewInsets="NO" id="O2l-b7-FFo" sceneMemberID="viewController">
                    <toolbarItems/>
                    <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="pps-wB-KOS">
                        <rect key="frame" x="0.0" y="44" width="414" height="44"/>
                        <autoresizingMask key="autoresizingMask"/>
                    </navigationBar>
                    <nil name="viewControllers"/>
                    <connections>
                        <segue destination="BYZ-38-t0r" kind="relationship" relationship="rootViewController" id="PFm-rQ-dMH"/>
                    </connections>
                </navigationController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="OIg-lP-yHr" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="136.80000000000001" y="-564.46776611694156"/>
        </scene>
    </scenes>
    <resources>
        <image name="Diamond" width="100" height="100"/>
        <image name="Heart" width="100" height="100"/>
        <image name="Star" width="100" height="100"/>
    </resources>
</document>


================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>$(DEVELOPMENT_LANGUAGE)</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>$(PRODUCT_NAME)</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleVersion</key>
	<string>1</string>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIMainStoryboardFile</key>
	<string>Main</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array>
		<string>armv7</string>
	</array>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
	<key>UISupportedInterfaceOrientations~ipad</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/ViewController.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

final class ViewController: UIViewController {
}


================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 60;
	objects = {

/* Begin PBXBuildFile section */
		5314561C2100956C00618E20 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5314561B2100956C00618E20 /* AppDelegate.swift */; };
		5314561E2100956C00618E20 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5314561D2100956C00618E20 /* ViewController.swift */; };
		531456212100956C00618E20 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5314561F2100956C00618E20 /* Main.storyboard */; };
		531456232100956D00618E20 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 531456222100956D00618E20 /* Assets.xcassets */; };
		531456262100956D00618E20 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 531456242100956D00618E20 /* LaunchScreen.storyboard */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		531456182100956C00618E20 /* AdaptStack-v1.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdaptStack-v1.app"; sourceTree = BUILT_PRODUCTS_DIR; };
		5314561B2100956C00618E20 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
		5314561D2100956C00618E20 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
		531456202100956C00618E20 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
		531456222100956D00618E20 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
		531456252100956D00618E20 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
		531456272100956D00618E20 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		531456152100956C00618E20 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		5314560F2100956C00618E20 = {
			isa = PBXGroup;
			children = (
				5314561A2100956C00618E20 /* AdaptStack-v1 */,
				531456192100956C00618E20 /* Products */,
			);
			sourceTree = "<group>";
		};
		531456192100956C00618E20 /* Products */ = {
			isa = PBXGroup;
			children = (
				531456182100956C00618E20 /* AdaptStack-v1.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		5314561A2100956C00618E20 /* AdaptStack-v1 */ = {
			isa = PBXGroup;
			children = (
				5314561B2100956C00618E20 /* AppDelegate.swift */,
				5314561D2100956C00618E20 /* ViewController.swift */,
				5314561F2100956C00618E20 /* Main.storyboard */,
				531456222100956D00618E20 /* Assets.xcassets */,
				531456242100956D00618E20 /* LaunchScreen.storyboard */,
				531456272100956D00618E20 /* Info.plist */,
			);
			path = "AdaptStack-v1";
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		531456172100956C00618E20 /* AdaptStack-v1 */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 5314562A2100956D00618E20 /* Build configuration list for PBXNativeTarget "AdaptStack-v1" */;
			buildPhases = (
				531456142100956C00618E20 /* Sources */,
				531456152100956C00618E20 /* Frameworks */,
				531456162100956C00618E20 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "AdaptStack-v1";
			productName = "AdaptStack-v1";
			productReference = 531456182100956C00618E20 /* AdaptStack-v1.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		531456102100956C00618E20 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				BuildIndependentTargetsInParallel = YES;
				LastSwiftUpdateCheck = 1000;
				LastUpgradeCheck = 1610;
				ORGANIZATIONNAME = "Keith Harrison";
				TargetAttributes = {
					531456172100956C00618E20 = {
						CreatedOnToolsVersion = 10.0;
						LastSwiftMigration = 1020;
					};
				};
			};
			buildConfigurationList = 531456132100956C00618E20 /* Build configuration list for PBXProject "AdaptStack-v1" */;
			compatibilityVersion = "Xcode 15.0";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = 5314560F2100956C00618E20;
			productRefGroup = 531456192100956C00618E20 /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				531456172100956C00618E20 /* AdaptStack-v1 */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		531456162100956C00618E20 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				531456262100956D00618E20 /* LaunchScreen.storyboard in Resources */,
				531456232100956D00618E20 /* Assets.xcassets in Resources */,
				531456212100956C00618E20 /* Main.storyboard in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		531456142100956C00618E20 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				5314561E2100956C00618E20 /* ViewController.swift in Sources */,
				5314561C2100956C00618E20 /* AppDelegate.swift in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
		5314561F2100956C00618E20 /* Main.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				531456202100956C00618E20 /* Base */,
			);
			name = Main.storyboard;
			sourceTree = "<group>";
		};
		531456242100956D00618E20 /* LaunchScreen.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				531456252100956D00618E20 /* Base */,
			);
			name = LaunchScreen.storyboard;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		531456282100956D00618E20 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
				MTL_FAST_MATH = YES;
				ONLY_ACTIVE_ARCH = YES;
				SDKROOT = iphoneos;
				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
			};
			name = Debug;
		};
		531456292100956D00618E20 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = NO;
				MTL_FAST_MATH = YES;
				SDKROOT = iphoneos;
				SWIFT_COMPILATION_MODE = wholemodule;
				SWIFT_OPTIMIZATION_LEVEL = "-O";
				VALIDATE_PRODUCT = YES;
			};
			name = Release;
		};
		5314562B2100956D00618E20 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptStack-v1/Info.plist";
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptStack-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Debug;
		};
		5314562C2100956D00618E20 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptStack-v1/Info.plist";
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptStack-v1";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		531456132100956C00618E20 /* Build configuration list for PBXProject "AdaptStack-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				531456282100956D00618E20 /* Debug */,
				531456292100956D00618E20 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		5314562A2100956D00618E20 /* Build configuration list for PBXNativeTarget "AdaptStack-v1" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				5314562B2100956D00618E20 /* Debug */,
				5314562C2100956D00618E20 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 531456102100956C00618E20 /* Project object */;
}


================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
   version = "1.0">
   <FileRef
      location = "self:">
   </FileRef>
</Workspace>


================================================
FILE: sample-code/adaptability/AdaptStack-v1/AdaptStack-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>IDEDidComputeMac32BitWarning</key>
	<true/>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/AppDelegate.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?
}


================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/AppIcon.appiconset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "3x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "83.5x83.5",
      "scale" : "2x"
    },
    {
      "idiom" : "ios-marketing",
      "size" : "1024x1024",
      "scale" : "1x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/Contents.json
================================================
{
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/Diamond.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "diamond.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/Heart.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "heart.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/Star.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "star.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Base.lproj/LaunchScreen.storyboard
================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
    <dependencies>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--View Controller-->
        <scene sceneID="EHf-IW-A2E">
            <objects>
                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                    </view>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="53" y="375"/>
        </scene>
    </scenes>
</document>


================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Base.lproj/Main.storyboard
================================================
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="19162" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="SU5-6b-nQt">
    <device id="retina6_1" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="19144"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="Stack View standard spacing" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--Adapt Stack-->
        <scene sceneID="tne-QT-ifu">
            <objects>
                <viewController id="BYZ-38-t0r" customClass="ViewController" customModule="AdaptStack_v2" customModuleProvider="target" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
                        <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <subviews>
                            <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacingType="standard" translatesAutoresizingMaskIntoConstraints="NO" id="rNh-2K-Faf">
                                <rect key="frame" x="157" y="108" width="100" height="316"/>
                                <subviews>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Heart" translatesAutoresizingMaskIntoConstraints="NO" id="6Wy-K7-y3D">
                                        <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
                                    </imageView>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Star" translatesAutoresizingMaskIntoConstraints="NO" id="0og-hm-lF7">
                                        <rect key="frame" x="0.0" y="108" width="100" height="100"/>
                                        <directionalEdgeInsets key="directionalLayoutMargins" top="8" leading="8" bottom="8" trailing="8"/>
                                    </imageView>
                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Diamond" translatesAutoresizingMaskIntoConstraints="NO" id="fSK-vA-Hgt">
                                        <rect key="frame" x="0.0" y="216" width="100" height="100"/>
                                        <variation key="heightClass=compact" hidden="YES"/>
                                    </imageView>
                                </subviews>
                            </stackView>
                        </subviews>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                        <color key="backgroundColor" red="0.9999127984046936" green="1" blue="0.99988144636154175" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <constraints>
                            <constraint firstItem="rNh-2K-Faf" firstAttribute="top" secondItem="8bC-Xf-vdC" secondAttribute="topMargin" id="RDG-Xa-CW9"/>
                            <constraint firstItem="rNh-2K-Faf" firstAttribute="centerX" secondItem="8bC-Xf-vdC" secondAttribute="centerXWithinMargins" id="fOG-4X-E9p"/>
                        </constraints>
                        <directionalEdgeInsets key="directionalLayoutMargins" top="20" leading="20" bottom="20" trailing="20"/>
                    </view>
                    <navigationItem key="navigationItem" title="Adapt Stack" id="FEf-rj-Pwq"/>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="916" y="-564"/>
        </scene>
        <!--Navigation Controller-->
        <scene sceneID="0V7-je-DwW">
            <objects>
                <navigationController automaticallyAdjustsScrollViewInsets="NO" id="SU5-6b-nQt" sceneMemberID="viewController">
                    <toolbarItems/>
                    <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="QYw-pd-oxU">
                        <rect key="frame" x="0.0" y="44" width="414" height="44"/>
                        <autoresizingMask key="autoresizingMask"/>
                    </navigationBar>
                    <nil name="viewControllers"/>
                    <connections>
                        <segue destination="BYZ-38-t0r" kind="relationship" relationship="rootViewController" id="beB-mo-BfY"/>
                    </connections>
                </navigationController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="oaq-jj-85n" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="136.80000000000001" y="-564.46776611694156"/>
        </scene>
    </scenes>
    <resources>
        <image name="Diamond" width="100" height="100"/>
        <image name="Heart" width="100" height="100"/>
        <image name="Star" width="100" height="100"/>
    </resources>
</document>


================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>$(DEVELOPMENT_LANGUAGE)</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>$(PRODUCT_NAME)</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleVersion</key>
	<string>1</string>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIMainStoryboardFile</key>
	<string>Main</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array>
		<string>armv7</string>
	</array>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
	<key>UISupportedInterfaceOrientations~ipad</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/ViewController.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

final class ViewController: UIViewController {
}


================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 60;
	objects = {

/* Begin PBXBuildFile section */
		5314563A2100BBC700618E20 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 531456392100BBC700618E20 /* AppDelegate.swift */; };
		5314563C2100BBC700618E20 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5314563B2100BBC700618E20 /* ViewController.swift */; };
		5314563F2100BBC700618E20 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5314563D2100BBC700618E20 /* Main.storyboard */; };
		531456412100BBC800618E20 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 531456402100BBC800618E20 /* Assets.xcassets */; };
		531456442100BBC800618E20 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 531456422100BBC800618E20 /* LaunchScreen.storyboard */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		531456362100BBC700618E20 /* AdaptStack-v2.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "AdaptStack-v2.app"; sourceTree = BUILT_PRODUCTS_DIR; };
		531456392100BBC700618E20 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
		5314563B2100BBC700618E20 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
		5314563E2100BBC700618E20 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
		531456402100BBC800618E20 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
		531456432100BBC800618E20 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
		531456452100BBC800618E20 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		531456332100BBC700618E20 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		5314562D2100BBC700618E20 = {
			isa = PBXGroup;
			children = (
				531456382100BBC700618E20 /* AdaptStack-v2 */,
				531456372100BBC700618E20 /* Products */,
			);
			sourceTree = "<group>";
		};
		531456372100BBC700618E20 /* Products */ = {
			isa = PBXGroup;
			children = (
				531456362100BBC700618E20 /* AdaptStack-v2.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		531456382100BBC700618E20 /* AdaptStack-v2 */ = {
			isa = PBXGroup;
			children = (
				531456392100BBC700618E20 /* AppDelegate.swift */,
				5314563B2100BBC700618E20 /* ViewController.swift */,
				5314563D2100BBC700618E20 /* Main.storyboard */,
				531456402100BBC800618E20 /* Assets.xcassets */,
				531456422100BBC800618E20 /* LaunchScreen.storyboard */,
				531456452100BBC800618E20 /* Info.plist */,
			);
			path = "AdaptStack-v2";
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		531456352100BBC700618E20 /* AdaptStack-v2 */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 531456482100BBC800618E20 /* Build configuration list for PBXNativeTarget "AdaptStack-v2" */;
			buildPhases = (
				531456322100BBC700618E20 /* Sources */,
				531456332100BBC700618E20 /* Frameworks */,
				531456342100BBC700618E20 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "AdaptStack-v2";
			productName = "AdaptStack-v2";
			productReference = 531456362100BBC700618E20 /* AdaptStack-v2.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		5314562E2100BBC700618E20 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				BuildIndependentTargetsInParallel = YES;
				LastSwiftUpdateCheck = 1000;
				LastUpgradeCheck = 1610;
				ORGANIZATIONNAME = "Keith Harrison";
				TargetAttributes = {
					531456352100BBC700618E20 = {
						CreatedOnToolsVersion = 10.0;
						LastSwiftMigration = 1020;
					};
				};
			};
			buildConfigurationList = 531456312100BBC700618E20 /* Build configuration list for PBXProject "AdaptStack-v2" */;
			compatibilityVersion = "Xcode 15.0";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = 5314562D2100BBC700618E20;
			productRefGroup = 531456372100BBC700618E20 /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				531456352100BBC700618E20 /* AdaptStack-v2 */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		531456342100BBC700618E20 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				531456442100BBC800618E20 /* LaunchScreen.storyboard in Resources */,
				531456412100BBC800618E20 /* Assets.xcassets in Resources */,
				5314563F2100BBC700618E20 /* Main.storyboard in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		531456322100BBC700618E20 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				5314563C2100BBC700618E20 /* ViewController.swift in Sources */,
				5314563A2100BBC700618E20 /* AppDelegate.swift in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
		5314563D2100BBC700618E20 /* Main.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				5314563E2100BBC700618E20 /* Base */,
			);
			name = Main.storyboard;
			sourceTree = "<group>";
		};
		531456422100BBC800618E20 /* LaunchScreen.storyboard */ = {
			isa = PBXVariantGroup;
			children = (
				531456432100BBC800618E20 /* Base */,
			);
			name = LaunchScreen.storyboard;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		531456462100BBC800618E20 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
				MTL_FAST_MATH = YES;
				ONLY_ACTIVE_ARCH = YES;
				SDKROOT = iphoneos;
				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
			};
			name = Debug;
		};
		531456472100BBC800618E20 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_ENABLE_OBJC_WEAK = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_USER_SCRIPT_SANDBOXING = YES;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
				MTL_ENABLE_DEBUG_INFO = NO;
				MTL_FAST_MATH = YES;
				SDKROOT = iphoneos;
				SWIFT_COMPILATION_MODE = wholemodule;
				SWIFT_OPTIMIZATION_LEVEL = "-O";
				VALIDATE_PRODUCT = YES;
			};
			name = Release;
		};
		531456492100BBC800618E20 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptStack-v2/Info.plist";
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptStack-v2";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Debug;
		};
		5314564A2100BBC800618E20 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				CODE_SIGN_STYLE = Automatic;
				DEVELOPMENT_TEAM = LCC2J94N44;
				INFOPLIST_FILE = "AdaptStack-v2/Info.plist";
				LD_RUNPATH_SEARCH_PATHS = (
					"$(inherited)",
					"@executable_path/Frameworks",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.useyourloaf.AdaptStack-v2";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SWIFT_VERSION = 6.0;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		531456312100BBC700618E20 /* Build configuration list for PBXProject "AdaptStack-v2" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				531456462100BBC800618E20 /* Debug */,
				531456472100BBC800618E20 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		531456482100BBC800618E20 /* Build configuration list for PBXNativeTarget "AdaptStack-v2" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				531456492100BBC800618E20 /* Debug */,
				5314564A2100BBC800618E20 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 5314562E2100BBC700618E20 /* Project object */;
}


================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2.xcodeproj/project.xcworkspace/contents.xcworkspacedata
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
   version = "1.0">
   <FileRef
      location = "self:">
   </FileRef>
</Workspace>


================================================
FILE: sample-code/adaptability/AdaptStack-v2/AdaptStack-v2.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>IDEDidComputeMac32BitWarning</key>
	<true/>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/AppDelegate.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        window = UIWindow(frame: UIScreen.main.bounds)
        window?.backgroundColor = .white
        let rootViewController = ViewController()
        rootViewController.title = NSLocalizedString("Adapt Stack", comment: "Adapt Stack")
        let navigationController = UINavigationController(rootViewController: rootViewController)
        window?.rootViewController = navigationController
        window?.makeKeyAndVisible()
        return true
    }
}


================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/AppIcon.appiconset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "20x20",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "3x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "20x20",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "40x40",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "1x"
    },
    {
      "idiom" : "ipad",
      "size" : "76x76",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "size" : "83.5x83.5",
      "scale" : "2x"
    },
    {
      "idiom" : "ios-marketing",
      "size" : "1024x1024",
      "scale" : "1x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/Contents.json
================================================
{
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/Diamond.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "diamond.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/Heart.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "heart.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/Star.imageset/Contents.json
================================================
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "star.pdf"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "properties" : {
    "preserves-vector-representation" : true
  }
}

================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Base.lproj/LaunchScreen.storyboard
================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
    <dependencies>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <scenes>
        <!--View Controller-->
        <scene sceneID="EHf-IW-A2E">
            <objects>
                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
                    </view>
                </viewController>
                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
            </objects>
            <point key="canvasLocation" x="53" y="375"/>
        </scene>
    </scenes>
</document>


================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>$(DEVELOPMENT_LANGUAGE)</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>$(PRODUCT_NAME)</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleVersion</key>
	<string>1</string>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array>
		<string>armv7</string>
	</array>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
	<key>UISupportedInterfaceOrientations~ipad</key>
	<array>
		<string>UIInterfaceOrientationPortrait</string>
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
		<string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string>
	</array>
</dict>
</plist>


================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/ViewController.swift
================================================
//  Copyright © 2018 Keith Harrison. All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//
//  1. Redistributions of source code must retain the above copyright
//  notice, this list of conditions and the following disclaimer.
//
//  2. Redistributions in binary form must reproduce the above copyright
//  notice, this list of conditions and the following disclaimer in the
//  documentation and/or other materials provided with the distribution.
//
//  3. Neither the name of the copyright holder nor the names of its
//  contributors may be used to endorse or promote products derived from
//  this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
//  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
//  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
//  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
//  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
//  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
//  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
//  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
//  POSSIBILITY OF SUCH DAMAGE.

import UIKit

final class ViewController: UIViewController {
    private let heart = UIImageView(image: UIImage(named: "Heart"))
    private let star = UIImageView(image: UIImage(named: "Star"))
    private let diamond = UIImageView(image: UIImage(named: "Diamond"))

    private lazy var stackView: UIStackView = {
        let stackView = UIStackView(arrangedSubviews: [heart, star, diamond])
        stackView.translatesAutoresizingMaskIntoConstraints = false
        stackView.spacing = UIStackView.spacingUseSystem
        stackView.axis = .vertical
        return stackView
    }()

    override func viewDidLoad() {
        super.viewDidLoad()
        setupView()
        // If you need to support prior to iOS 12,
        // or you're not building against iOS 17
        // configure the view here. The traits may
        // not yet be set but we will get a call to
        // traitCollectionDidChange to fix things.
//        configureView()
    }
    
    // viewIsAppearing was added in iOS 17 but is back
    // deployable to iOS 13. It's called after the view
    // is added to the hierarchy so the traits are set.
    override func viewIsAppearing(_ animated: Bool) {
        super.viewIsAppearing(animated)
        configureView()
    }

    override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
        super.traitCollectionDidChange(previousTraitCollection)
        if previousTraitCollection?.verticalSizeClass != traitCollection.verticalSizeClass {
            configureView()
        }
    }

    private func setupView() {
        view.addSubview(stackView)
        view.directionalLayoutMargins = NSDirectionalEdgeInsets(top: 20.0, leading: 20.0, bottom: 20.0, trailing: 20.0)
        let margins = view.layoutMarginsGuide
        NSLayoutConstraint.activate([
            stackView.topAnchor.constraint(equalTo: margins.topAnchor),
            stackView.centerXAnchor.constraint(equalTo: margins.centerXAnchor)
        ])
    }

    private func configureView() {
        if traitCollection.verticalSizeClass == .compact {
            stackView.axis = .horizontal
        } else {
            stackView.axis = .vertical
        }
    }
}


================================================
FILE: sample-code/adaptability/AdaptStack-v3/AdaptStack-v3.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 60;
	objects = {

/* Begin PBXBuildFile section */
		531456762101EA0400618E20 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 531456752101EA0400618E20 /* AppDelegate.swift */; };
		531456782101EA0400618E20 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 531456772101EA0400618E20 /* ViewController.swift */; };
		5314567A2101EA0500618E20 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 531456792101EA0500618E20 /* Assets.xcassets */; };
		5314567D2101EA0500618E20 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5314567B2101EA0500618E20 /* LaunchScreen.storyboard */; }
Download .txt
gitextract_eopec34y/

├── LICENSE
├── README.md
├── sample-code/
│   ├── adaptability/
│   │   ├── AdaptAsset-v1/
│   │   │   ├── AdaptAsset-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptAsset-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptConstraints-v1/
│   │   │   ├── AdaptConstraints-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── buttonTemplate.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptConstraints-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptLayout-v1/
│   │   │   ├── AdaptLayout-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Sun.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptLayout-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptSize-v1/
│   │   │   ├── AdaptSize-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptSize-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptStack-v1/
│   │   │   ├── AdaptStack-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptStack-v2/
│   │   │   ├── AdaptStack-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptStack-v3/
│   │   │   ├── AdaptStack-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       ├── project.xcworkspace/
│   │   │       │   ├── contents.xcworkspacedata
│   │   │       │   └── xcshareddata/
│   │   │       │       └── IDEWorkspaceChecks.plist
│   │   │       └── xcshareddata/
│   │   │           └── xcschemes/
│   │   │               └── AdaptStack-v3.xcscheme
│   │   ├── AdaptStack-v4/
│   │   │   ├── AdaptStack-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptStack-v5/
│   │   │   ├── AdaptStack-v5/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Diamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptStack-v5.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AdaptText-v1/
│   │   │   ├── AdaptText-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   ├── Localizable.stringsdict
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AdaptText-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── AdaptType-v1/
│   │       ├── AdaptType-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   └── SettingsViewController.swift
│   │       └── AdaptType-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── creating-constraints-in-code/
│   │   ├── Anchors-v1/
│   │   │   ├── Anchors-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Anchors-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Anchors-v2/
│   │   │   ├── Anchors-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── StopGoView.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── Anchors-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── NSLayoutConstraint-v1/
│   │   │   ├── NSLayoutConstraint-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── NSLayoutConstraint-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── VFL-v1/
│   │       ├── VFL-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   └── LaunchScreen.storyboard
│   │       │   ├── Info.plist
│   │       │   └── ViewController.swift
│   │       └── VFL-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── debugging/
│   │   ├── Conflict-v1/
│   │   │   ├── Conflict-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Conflict-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Conflict-v2/
│   │   │   ├── Conflict-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Conflict-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       ├── project.xcworkspace/
│   │   │       │   ├── contents.xcworkspacedata
│   │   │       │   └── xcshareddata/
│   │   │       │       └── IDEWorkspaceChecks.plist
│   │   │       └── xcshareddata/
│   │   │           └── xcschemes/
│   │   │               └── Conflict-v2.xcscheme
│   │   ├── Loop-v1/
│   │   │   ├── Loop-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Loop-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       ├── project.xcworkspace/
│   │   │       │   ├── contents.xcworkspacedata
│   │   │       │   └── xcshareddata/
│   │   │       │       └── IDEWorkspaceChecks.plist
│   │   │       └── xcshareddata/
│   │   │           └── xcschemes/
│   │   │               └── Loop-v1.xcscheme
│   │   └── Missing-v1/
│   │       ├── Missing-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── ConfirmView.swift
│   │       │   ├── Info.plist
│   │       │   ├── UIView+Ambiguous.swift
│   │       │   └── ViewController.swift
│   │       └── Missing-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── dynamic-type/
│   │   ├── CustomFont-v1/
│   │   │   ├── CustomFont-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Noteworthy.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   ├── QuoteViewController.swift
│   │   │   │   ├── ScaledFont.swift
│   │   │   │   └── UILabel+Style.swift
│   │   │   └── CustomFont-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CustomFont-v2/
│   │   │   ├── CustomFont-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Noteworthy.plist
│   │   │   │   ├── NotoSerif.plist
│   │   │   │   ├── Noto_Serif/
│   │   │   │   │   └── LICENSE.txt
│   │   │   │   ├── Quote.swift
│   │   │   │   ├── QuoteViewController.swift
│   │   │   │   └── ScaledFont.swift
│   │   │   └── CustomFont-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v1/
│   │   │   ├── DynamicType-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   └── QuoteViewController.swift
│   │   │   └── DynamicType-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v2/
│   │   │   ├── DynamicType-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   ├── QuoteViewController.swift
│   │   │   │   └── UILabel+Style.swift
│   │   │   └── DynamicType-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v3/
│   │   │   ├── DynamicType-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   └── QuoteViewController.swift
│   │   │   └── DynamicType-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v4/
│   │   │   ├── DynamicType-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   └── QuoteViewController.swift
│   │   │   └── DynamicType-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── DynamicType-v5/
│   │   │   ├── DynamicType-v5/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Quote.swift
│   │   │   │   ├── QuoteViewController.swift
│   │   │   │   └── UILabel+Style.swift
│   │   │   └── DynamicType-v5.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScaledFont-v1/
│   │   │   ├── ScaledFont-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── UIFont+scaleFactor.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── ScaledFont-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── TextView-v1/
│   │       ├── TextView-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   ├── Quote.swift
│   │       │   └── QuoteViewController.swift
│   │       └── TextView-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── engine/
│   │   ├── Alignment-v1/
│   │   │   ├── Alignment-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── CrazyShadow.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── GridView.swift
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Alignment-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       ├── project.xcworkspace/
│   │   │       │   ├── contents.xcworkspacedata
│   │   │       │   └── xcshareddata/
│   │   │       │       └── IDEWorkspaceChecks.plist
│   │   │       └── xcshareddata/
│   │   │           └── xcschemes/
│   │   │               └── Alignment-v1.xcscheme
│   │   ├── Alignment-v2/
│   │   │   ├── Alignment-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   └── AppIcon.appiconset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── GridView.swift
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   └── UIImageView+UYLExtensions.swift
│   │   │   └── Alignment-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Animate-v1/
│   │   │   ├── Animate-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Animate-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── Layout-v1/
│   │       ├── Layout-v1/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   ├── PreviewPane.swift
│   │       │   └── PreviewViewController.swift
│   │       └── Layout-v1.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── layout-before-auto-layout/
│   │   ├── CodeLayout-v1/
│   │   │   ├── CodeLayout-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── RootViewController.swift
│   │   │   └── CodeLayout-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v2/
│   │   │   ├── CodeLayout-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   └── RootViewController.xib
│   │   │   └── CodeLayout-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v3/
│   │   │   ├── CodeLayout-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── RootViewController.swift
│   │   │   └── CodeLayout-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v4/
│   │   │   ├── CodeLayout-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── RootViewController.swift
│   │   │   └── CodeLayout-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v5/
│   │   │   ├── CodeLayout-v5/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   └── SceneDelegate.swift
│   │   │   └── CodeLayout-v5.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CodeLayout-v6/
│   │   │   ├── CodeLayout-v6/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── TileView.swift
│   │   │   └── CodeLayout-v6.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v1/
│   │   │   ├── FirstLayout-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v2/
│   │   │   ├── FirstLayout-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v3/
│   │   │   ├── FirstLayout-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v4/
│   │   │   ├── FirstLayout-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   ├── TileView.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── FirstLayout-v5/
│   │   │   ├── FirstLayout-v5/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   ├── TileView.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── FirstLayout-v5.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── FirstLayout-v6/
│   │       ├── FirstLayout-v6/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AccentColor.colorset/
│   │       │   │   │   └── Contents.json
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   ├── SceneDelegate.swift
│   │       │   ├── TileView.swift
│   │       │   └── ViewController.swift
│   │       └── FirstLayout-v6.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── layout-priorities/
│   │   ├── CHCR-v1/
│   │   │   ├── CHCR-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Sun.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── CHCR-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── CHCR-v2/
│   │   │   ├── CHCR-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Sun.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── RootViewController.swift
│   │   │   └── CHCR-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ContentMode/
│   │   │   ├── ContentMode/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── ContentMode.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Priorities-v1/
│   │   │   ├── Priorities-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── Snow.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Sun.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Priorities-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── Priorities-v2/
│   │       ├── Priorities-v2/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   ├── Contents.json
│   │       │   │   ├── Snow.imageset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Sun.imageset/
│   │       │   │       └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   └── LaunchScreen.storyboard
│   │       │   ├── Info.plist
│   │       │   └── RootViewController.swift
│   │       └── Priorities-v2.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── safe-areas-layout-margins/
│   │   ├── Anchors-v3/
│   │   │   ├── Anchors-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Anchors-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Anchors-v4/
│   │   │   ├── Anchors-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── UIViewController+SafeAnchor.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── Anchors-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── EqualSpacing-v1/
│   │   │   ├── EqualSpacing-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── buttonTemplate.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── EqualSpacing-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── EqualSpacing-v2/
│   │   │   ├── EqualSpacing-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── buttonTemplate.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── EqualSpacing-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Keyboard-v1/
│   │   │   ├── Keyboard-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── Toolbar.swift
│   │   │   └── Keyboard-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Keyboard-v2/
│   │   │   ├── Keyboard-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── RootViewController.swift
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── Toolbar.swift
│   │   │   └── Keyboard-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Keyboard-v3/
│   │   │   ├── Keyboard-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── SceneDelegate.swift
│   │   │   │   └── TextViewController.swift
│   │   │   └── Keyboard-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Margins-v1/
│   │   │   ├── Margins-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Margins-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Margins-v2/
│   │   │   ├── Margins-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Margins-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Margins-v3/
│   │   │   ├── Margins-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── NestedView.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── Margins-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── SafeArea-v1/
│   │   │   ├── SafeArea-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── SafeArea-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── SafeArea-v2/
│   │       ├── SafeArea-v2/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   └── Main.storyboard
│   │       │   ├── Info.plist
│   │       │   └── ViewController.swift
│   │       └── SafeArea-v2.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── scroll-views/
│   │   ├── AdaptScroll-v1/
│   │   │   ├── AdaptScroll-v1/
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AdaptiveScrollView.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── AdaptScroll-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollFloat-v1/
│   │   │   ├── ScrollFloat-v1/
│   │   │   │   ├── ActivityView.swift
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── ScrollFloat-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollGuide-v1/
│   │   │   ├── ScrollGuide-v1/
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── ScrollGuide-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollGuide-v2/
│   │   │   ├── ScrollGuide-v2/
│   │   │   │   ├── ActivityView.swift
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── ScrollGuide-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollStack-v1/
│   │   │   ├── ScrollStack-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── ScrollStack-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ScrollView-v1/
│   │   │   ├── ScrollView-v1/
│   │   │   │   ├── ActivityViewController.swift
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── Skater.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   └── Info.plist
│   │   │   └── ScrollView-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── ScrollView-v2/
│   │       ├── ScrollView-v2/
│   │       │   ├── ActivityView.swift
│   │       │   ├── ActivityViewController.swift
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   ├── Contents.json
│   │       │   │   └── Skater.imageset/
│   │       │   │       └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   └── LaunchScreen.storyboard
│   │       │   └── Info.plist
│   │       └── ScrollView-v2.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── stack-views/
│   │   ├── AnimatingStack-v1/
│   │   │   ├── AnimatingStack-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AnimatingStack-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AnimatingStack-v2/
│   │   │   ├── AnimatingStack-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AnimatingStack-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AnimatingStack-v3/
│   │   │   ├── AnimatingStack-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── UIStackView+Extension.swift
│   │   │   │   └── ViewController.swift
│   │   │   └── AnimatingStack-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── AnimatingStack-v4/
│   │   │   ├── AnimatingStack-v4/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AccentColor.colorset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── DIamond.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Heart.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Star.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── AnimatingStack-v4.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── Distribution/
│   │   │   ├── Distribution/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── Distribution.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── MultiLine-v1/
│   │   │   ├── MultiLine-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── MultiLine-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── MultiLine-v2/
│   │   │   ├── MultiLine-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── MultiLine-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── StackProfile-v1/
│   │   │   ├── StackProfile-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   └── placeholder.imageset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Profile.swift
│   │   │   │   └── ProfileViewController.swift
│   │   │   └── StackProfile-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── StackProfile-v2/
│   │   │   ├── StackProfile-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── placeholder.imageset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── sky.colorset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   ├── Profile.swift
│   │   │   │   └── ProfileViewController.swift
│   │   │   └── StackProfile-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── StackViews-v1/
│   │   │   ├── StackViews-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   └── AppIcon.appiconset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── StackViews-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── StackViews-v2/
│   │   │   ├── StackViews-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   └── AppIcon.appiconset/
│   │   │   │   │       └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Info.plist
│   │   │   │   └── ViewController.swift
│   │   │   └── StackViews-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── StackViews-v3/
│   │       ├── StackViews-v3/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   └── AppIcon.appiconset/
│   │       │   │       └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   └── LaunchScreen.storyboard
│   │       │   ├── Info.plist
│   │       │   └── RootViewController.swift
│   │       └── StackViews-v3.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   ├── table-views/
│   │   ├── ReadableTable-v1/
│   │   │   ├── ReadableTable-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── ReadableTable-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── ReadableTable-v2/
│   │   │   ├── ReadableTable-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── ReadableTable-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── SelfSizing-v1/
│   │   │   ├── SelfSizing-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── SelfSizing-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── SelfSizing-v2/
│   │   │   ├── SelfSizing-v2/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   ├── LineCell.xib
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── SelfSizing-v2.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── SelfSizing-v3/
│   │   │   ├── SelfSizing-v3/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   └── LaunchScreen.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── SelfSizing-v3.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   ├── TableHeader-v1/
│   │   │   ├── TableHeader-v1/
│   │   │   │   ├── AppDelegate.swift
│   │   │   │   ├── Assets.xcassets/
│   │   │   │   │   ├── AppIcon.appiconset/
│   │   │   │   │   │   └── Contents.json
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── Base.lproj/
│   │   │   │   │   ├── LaunchScreen.storyboard
│   │   │   │   │   └── Main.storyboard
│   │   │   │   ├── Book.swift
│   │   │   │   ├── BookDataSource.swift
│   │   │   │   ├── BookHeaderView.swift
│   │   │   │   ├── BookTableViewController.swift
│   │   │   │   ├── Huckleberry.plist
│   │   │   │   ├── Info.plist
│   │   │   │   ├── LineCell.swift
│   │   │   │   └── ReusableIdentifier.swift
│   │   │   └── TableHeader-v1.xcodeproj/
│   │   │       ├── project.pbxproj
│   │   │       └── project.xcworkspace/
│   │   │           ├── contents.xcworkspacedata
│   │   │           └── xcshareddata/
│   │   │               └── IDEWorkspaceChecks.plist
│   │   └── TableHeader-v2/
│   │       ├── TableHeader-v2/
│   │       │   ├── AppDelegate.swift
│   │       │   ├── Assets.xcassets/
│   │       │   │   ├── AppIcon.appiconset/
│   │       │   │   │   └── Contents.json
│   │       │   │   └── Contents.json
│   │       │   ├── Base.lproj/
│   │       │   │   ├── BookHeaderView.xib
│   │       │   │   ├── LaunchScreen.storyboard
│   │       │   │   ├── LineCell.xib
│   │       │   │   └── Main.storyboard
│   │       │   ├── Book.swift
│   │       │   ├── BookDataSource.swift
│   │       │   ├── BookHeaderView.swift
│   │       │   ├── BookTableViewController.swift
│   │       │   ├── Huckleberry.plist
│   │       │   ├── Info.plist
│   │       │   ├── LineCell.swift
│   │       │   └── ReusableIdentifier.swift
│   │       └── TableHeader-v2.xcodeproj/
│   │           ├── project.pbxproj
│   │           └── project.xcworkspace/
│   │               ├── contents.xcworkspacedata
│   │               └── xcshareddata/
│   │                   └── IDEWorkspaceChecks.plist
│   └── using-interface-builder/
│       └── TwoButtons-v1/
│           ├── TwoButtons-v1/
│           │   ├── AppDelegate.swift
│           │   ├── Assets.xcassets/
│           │   │   ├── AppIcon.appiconset/
│           │   │   │   └── Contents.json
│           │   │   └── Contents.json
│           │   ├── Base.lproj/
│           │   │   ├── LaunchScreen.storyboard
│           │   │   └── Main.storyboard
│           │   ├── Info.plist
│           │   └── ViewController.swift
│           └── TwoButtons-v1.xcodeproj/
│               ├── project.pbxproj
│               └── project.xcworkspace/
│                   ├── contents.xcworkspacedata
│                   └── xcshareddata/
│                       └── IDEWorkspaceChecks.plist
└── solutions/
    ├── adaptability/
    │   ├── ch14-1-v1/
    │   │   ├── ch14-1-v1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── ch14-1-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch14-1-v2/
    │   │   ├── ch14-1-v2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── ch14-1-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch14-1-v3/
    │   │   ├── ch14-1-v3/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AccentColor.colorset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── ch14-1-v3.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           └── contents.xcworkspacedata
    │   ├── ch14-2-v1/
    │   │   ├── ch14-2-v1/
    │   │   │   ├── AdaptiveScrollView.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   ├── SkyBlue.colorset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Sun.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Forecast.swift
    │   │   │   ├── Info.plist
    │   │   │   └── TodayViewController.swift
    │   │   └── ch14-2-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch14-2-v2/
    │   │   ├── ch14-2-v2/
    │   │   │   ├── AdaptiveScrollView.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   ├── SkyBlue.colorset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Sun.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Forecast.swift
    │   │   │   ├── ForecastView.swift
    │   │   │   ├── Info.plist
    │   │   │   ├── TodayViewController.swift
    │   │   │   └── UILabel+Style.swift
    │   │   └── ch14-2-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── ch14-2-v3/
    │       ├── ch14-2-v3/
    │       │   ├── AdaptiveScrollView.swift
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AccentColor.colorset/
    │       │   │   │   └── Contents.json
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   ├── Contents.json
    │       │   │   ├── SkyBlue.colorset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Sun.imageset/
    │       │   │       └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   └── LaunchScreen.storyboard
    │       │   ├── Forecast.swift
    │       │   ├── ForecastView.swift
    │       │   ├── Info.plist
    │       │   ├── TodayViewController.swift
    │       │   └── UILabel+Style.swift
    │       └── ch14-2-v3.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               └── contents.xcworkspacedata
    ├── creating-constraints-in-code/
    │   ├── Challenge5-1/
    │   │   ├── Challenge5-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge5-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge5-2/
    │       ├── Challenge5-2/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   └── LaunchScreen.storyboard
    │       │   ├── Info.plist
    │       │   ├── TileView.swift
    │       │   └── ViewController.swift
    │       └── Challenge5-2.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── dynamic-type/
    │   ├── ch12-1-v1/
    │   │   ├── ch12-1-v1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Book.swift
    │   │   │   ├── BookViewController.swift
    │   │   │   └── Info.plist
    │   │   └── ch12-1-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch12-1-v2/
    │   │   ├── ch12-1-v2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Book.swift
    │   │   │   ├── BookViewController.swift
    │   │   │   ├── Info.plist
    │   │   │   ├── UILabel+Style.swift
    │   │   │   └── UITextView+Style.swift
    │   │   └── ch12-1-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch12-2-v1/
    │   │   ├── ch12-2-v1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── ch12-2-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── ch12-3-v1/
    │       ├── ch12-3-v1/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── BookViewController.swift
    │       │   ├── Chapter.swift
    │       │   ├── Info.plist
    │       │   ├── Roboto/
    │       │   │   └── LICENSE.txt
    │       │   ├── Roboto.plist
    │       │   └── ScaledFont.swift
    │       └── ch12-3-v1.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── engine/
    │   ├── Challenge9-1/
    │   │   ├── Challenge9-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   ├── SceneDelegate.swift
    │   │   │   └── ViewController.swift
    │   │   └── Challenge9-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge9-2-v1/
    │   │   ├── Challenge9-2-v1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   ├── PanicView.swift
    │   │   │   ├── RootViewController.swift
    │   │   │   └── SceneDelegate.swift
    │   │   └── Challenge9-2-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge9-2-v2/
    │       ├── Challenge9-2-v2/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── Info.plist
    │       │   ├── PanicView.swift
    │       │   ├── SceneDelegate.swift
    │       │   └── ViewController.swift
    │       └── Challenge9-2-v2.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── interface-builder/
    │   ├── Challenge4-1/
    │   │   ├── Challenge4-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge4-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge4-2/
    │   │   ├── Challenge4-2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge4-2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge4-3/
    │   │   ├── Challenge4-3/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge4-3.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge4-4/
    │       ├── Challenge4-4/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── Info.plist
    │       │   └── ViewController.swift
    │       └── Challenge4-4.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── layout-before-auto-layout/
    │   ├── Challenge2-1/
    │   │   ├── Challenge2-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge2-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge2-2/
    │   │   ├── Challenge2-2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── RootViewController.swift
    │   │   └── Challenge2-2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge2-3/
    │   │   ├── Challenge2-3/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   ├── RGBView.swift
    │   │   │   └── ViewController.swift
    │   │   └── Challenge2-3.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge2-4/
    │       ├── Challenge2-4/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   └── AppIcon.appiconset/
    │       │   │       └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── Info.plist
    │       │   ├── RGBView.swift
    │       │   └── ViewController.swift
    │       └── Challenge2-4.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── layout-priorities/
    │   ├── Code/
    │   │   ├── Challenge7-1/
    │   │   │   ├── Challenge7-1/
    │   │   │   │   ├── AppDelegate.swift
    │   │   │   │   ├── Assets.xcassets/
    │   │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │   │       └── Contents.json
    │   │   │   │   ├── Base.lproj/
    │   │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   │   ├── Info.plist
    │   │   │   │   └── RootViewController.swift
    │   │   │   └── Challenge7-1.xcodeproj/
    │   │   │       ├── project.pbxproj
    │   │   │       └── project.xcworkspace/
    │   │   │           ├── contents.xcworkspacedata
    │   │   │           └── xcshareddata/
    │   │   │               └── IDEWorkspaceChecks.plist
    │   │   ├── Challenge7-2/
    │   │   │   ├── Challenge7-2/
    │   │   │   │   ├── AppDelegate.swift
    │   │   │   │   ├── Assets.xcassets/
    │   │   │   │   │   └── AppIcon.appiconset/
    │   │   │   │   │       └── Contents.json
    │   │   │   │   ├── Base.lproj/
    │   │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   │   ├── Info.plist
    │   │   │   │   └── RootViewController.swift
    │   │   │   └── Challenge7-2.xcodeproj/
    │   │   │       ├── project.pbxproj
    │   │   │       └── project.xcworkspace/
    │   │   │           ├── contents.xcworkspacedata
    │   │   │           └── xcshareddata/
    │   │   │               └── IDEWorkspaceChecks.plist
    │   │   └── Challenge7-3/
    │   │       ├── Challenge7-3/
    │   │       │   ├── AppDelegate.swift
    │   │       │   ├── Assets.xcassets/
    │   │       │   │   ├── AppIcon.appiconset/
    │   │       │   │   │   └── Contents.json
    │   │       │   │   └── Contents.json
    │   │       │   ├── Base.lproj/
    │   │       │   │   └── LaunchScreen.storyboard
    │   │       │   ├── Info.plist
    │   │       │   └── ViewController.swift
    │   │       └── Challenge7-3.xcodeproj/
    │   │           ├── project.pbxproj
    │   │           └── project.xcworkspace/
    │   │               ├── contents.xcworkspacedata
    │   │               └── xcshareddata/
    │   │                   └── IDEWorkspaceChecks.plist
    │   └── Storyboard/
    │       ├── Challenge7-1/
    │       │   ├── Challenge7-1/
    │       │   │   ├── AppDelegate.swift
    │       │   │   ├── Assets.xcassets/
    │       │   │   │   ├── AppIcon.appiconset/
    │       │   │   │   │   └── Contents.json
    │       │   │   │   └── Contents.json
    │       │   │   ├── Base.lproj/
    │       │   │   │   ├── LaunchScreen.storyboard
    │       │   │   │   └── Main.storyboard
    │       │   │   ├── Info.plist
    │       │   │   └── ViewController.swift
    │       │   └── Challenge7-1.xcodeproj/
    │       │       ├── project.pbxproj
    │       │       └── project.xcworkspace/
    │       │           ├── contents.xcworkspacedata
    │       │           └── xcshareddata/
    │       │               └── IDEWorkspaceChecks.plist
    │       ├── Challenge7-2/
    │       │   ├── Challenge7-2/
    │       │   │   ├── AppDelegate.swift
    │       │   │   ├── Assets.xcassets/
    │       │   │   │   ├── AppIcon.appiconset/
    │       │   │   │   │   └── Contents.json
    │       │   │   │   └── Contents.json
    │       │   │   ├── Base.lproj/
    │       │   │   │   ├── LaunchScreen.storyboard
    │       │   │   │   └── Main.storyboard
    │       │   │   ├── Info.plist
    │       │   │   └── ViewController.swift
    │       │   └── Challenge7-2.xcodeproj/
    │       │       ├── project.pbxproj
    │       │       └── project.xcworkspace/
    │       │           ├── contents.xcworkspacedata
    │       │           └── xcshareddata/
    │       │               └── IDEWorkspaceChecks.plist
    │       └── Challenge7-3/
    │           ├── Challenge7-3/
    │           │   ├── AppDelegate.swift
    │           │   ├── Assets.xcassets/
    │           │   │   ├── AppIcon.appiconset/
    │           │   │   │   └── Contents.json
    │           │   │   └── Contents.json
    │           │   ├── Base.lproj/
    │           │   │   ├── LaunchScreen.storyboard
    │           │   │   └── Main.storyboard
    │           │   ├── Info.plist
    │           │   └── ViewController.swift
    │           └── Challenge7-3.xcodeproj/
    │               ├── project.pbxproj
    │               └── project.xcworkspace/
    │                   ├── contents.xcworkspacedata
    │                   └── xcshareddata/
    │                       └── IDEWorkspaceChecks.plist
    ├── safe-areas-layout-margins/
    │   ├── Challenge6-1/
    │   │   ├── Challenge6-1/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge6-1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge6-2/
    │   │   ├── Challenge6-2/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   ├── Info.plist
    │   │   │   └── ViewController.swift
    │   │   └── Challenge6-2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── Challenge6-3/
    │   │   ├── Challenge6-3/
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   ├── Info.plist
    │   │   │   ├── RootViewController.swift
    │   │   │   └── TileView.swift
    │   │   └── Challenge6-3.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── Challenge6-4/
    │       ├── Challenge6-4/
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   └── LaunchScreen.storyboard
    │       │   ├── Info.plist
    │       │   ├── RootViewController.swift
    │       │   ├── TileView.swift
    │       │   └── UIViewController+SafeAnchor.swift
    │       └── Challenge6-4.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── scroll-views/
    │   ├── ch11-1-v1/
    │   │   ├── ch11-1-v1/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-1-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch11-1-v2/
    │   │   ├── ch11-1-v2/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-1-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch11-2-v1/
    │   │   ├── ch11-2-v1/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-2-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch11-2-v2/
    │   │   ├── ch11-2-v2/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-2-v2.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   ├── ch11-3-v1/
    │   │   ├── ch11-3-v1/
    │   │   │   ├── ActivityViewController.swift
    │   │   │   ├── AdaptiveScrollView.swift
    │   │   │   ├── AppDelegate.swift
    │   │   │   ├── Assets.xcassets/
    │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Contents.json
    │   │   │   │   └── Skater.imageset/
    │   │   │   │       └── Contents.json
    │   │   │   ├── Base.lproj/
    │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   └── Main.storyboard
    │   │   │   └── Info.plist
    │   │   └── ch11-3-v1.xcodeproj/
    │   │       ├── project.pbxproj
    │   │       └── project.xcworkspace/
    │   │           ├── contents.xcworkspacedata
    │   │           └── xcshareddata/
    │   │               └── IDEWorkspaceChecks.plist
    │   └── ch11-3-v2/
    │       ├── ch11-3-v2/
    │       │   ├── ActivityViewController.swift
    │       │   ├── AdaptiveScrollView.swift
    │       │   ├── AppDelegate.swift
    │       │   ├── Assets.xcassets/
    │       │   │   ├── AppIcon.appiconset/
    │       │   │   │   └── Contents.json
    │       │   │   ├── Contents.json
    │       │   │   └── Skater.imageset/
    │       │   │       └── Contents.json
    │       │   ├── Base.lproj/
    │       │   │   └── LaunchScreen.storyboard
    │       │   └── Info.plist
    │       └── ch11-3-v2.xcodeproj/
    │           ├── project.pbxproj
    │           └── project.xcworkspace/
    │               ├── contents.xcworkspacedata
    │               └── xcshareddata/
    │                   └── IDEWorkspaceChecks.plist
    ├── stack-views/
    │   ├── Code/
    │   │   ├── Challenge8-1/
    │   │   │   ├── Challenge8-1/
    │   │   │   │   ├── AppDelegate.swift
    │   │   │   │   ├── Assets.xcassets/
    │   │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   │   └── Contents.json
    │   │   │   │   │   └── Contents.json
    │   │   │   │   ├── Base.lproj/
    │   │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   │   ├── Info.plist
    │   │   │   │   └── RootViewController.swift
    │   │   │   └── Challenge8-1.xcodeproj/
    │   │   │       ├── project.pbxproj
    │   │   │       └── project.xcworkspace/
    │   │   │           ├── contents.xcworkspacedata
    │   │   │           └── xcshareddata/
    │   │   │               └── IDEWorkspaceChecks.plist
    │   │   ├── Challenge8-2/
    │   │   │   ├── Challenge8-2/
    │   │   │   │   ├── AppDelegate.swift
    │   │   │   │   ├── Assets.xcassets/
    │   │   │   │   │   ├── AppIcon.appiconset/
    │   │   │   │   │   │   └── Contents.json
    │   │   │   │   │   ├── Contents.json
    │   │   │   │   │   └── Sun.imageset/
    │   │   │   │   │       └── Contents.json
    │   │   │   │   ├── Base.lproj/
    │   │   │   │   │   └── LaunchScreen.storyboard
    │   │   │   │   ├── Info.plist
    │   │   │   │   └── RootViewController.swift
    │   │   │   └── Challenge8-2.xcodeproj/
    │   │   │       ├── project.pbxproj
    │   │   │       └── project.xcworkspace/
    │   │   │           ├── contents.xcworkspacedata
    │   │   │           └── xcshareddata/
    │   │   │               └── IDEWorkspaceChecks.plist
    │   │   └── Challenge8-3/
    │   │       ├── Challenge8-3/
    │   │       │   ├── AppDelegate.swift
    │   │       │   ├── Assets.xcassets/
    │   │       │   │   ├── AppIcon.appiconset/
    │   │       │   │   │   └── Contents.json
    │   │       │   │   └── Contents.json
    │   │       │   ├── Base.lproj/
    │   │       │   │   └── LaunchScreen.storyboard
    │   │       │   ├── Info.plist
    │   │       │   ├── RootViewController.swift
    │   │       │   └── UIStackView+Extension.swift
    │   │       └── Challenge8-3.xcodeproj/
    │   │           ├── project.pbxproj
    │   │           └── project.xcworkspace/
    │   │               ├── contents.xcworkspacedata
    │   │               └── xcshareddata/
    │   │                   └── IDEWorkspaceChecks.plist
    │   └── Storyboard/
    │       ├── Challenge8-1/
    │       │   ├── Challenge8-1/
    │       │   │   ├── AppDelegate.swift
    │       │   │   ├── Assets.xcassets/
    │       │   │   │   ├── AppIcon.appiconset/
    │       │   │   │   │   └── Contents.json
    │       │   │   │   └── Contents.json
    │       │   │   ├── Base.lproj/
    │       │   │   │   ├── LaunchScreen.storyboard
    │       │   │   │   └── Main.storyboard
    │       │   │   ├── Info.plist
    │       │   │   └── ViewController.swift
    │       │   └── Challenge8-1.xcodeproj/
    │       │       ├── project.pbxproj
    │       │       └── project.xcworkspace/
    │       │           ├── contents.xcworkspacedata
    │       │           └── xcshareddata/
    │       │               └── IDEWorkspaceChecks.plist
    │       ├── Challenge8-2/
    │       │   ├── Challenge8-2/
    │       │   │   ├── AppDelegate.swift
    │       │   │   ├── Assets.xcassets/
    │       │   │   │   ├── AppIcon.appiconset/
    │       │   │   │   │   └── Contents.json
    │       │   │   │   ├── Contents.json
    │       │   │   │   └── Sun.imageset/
    │       │   │   │       └── Contents.json
    │       │   │   ├── Base.lproj/
    │       │   │   │   ├── LaunchScreen.storyboard
    │       │   │   │   └── Main.storyboard
    │       │   │   ├── Info.plist
    │       │   │   └── ViewController.swift
    │       │   └── Challenge8-2.xcodeproj/
    │       │       ├── project.pbxproj
    │       │       └── project.xcworkspace/
    │       │           ├── contents.xcworkspacedata
    │       │           └── xcshareddata/
    │       │               └── IDEWorkspaceChecks.plist
    │       └── Challenge8-3/
    │           ├── Challenge8-3/
    │           │   ├── AppDelegate.swift
    │           │   ├── Assets.xcassets/
    │           │   │   ├── AppIcon.appiconset/
    │           │   │   │   └── Contents.json
    │           │   │   └── Contents.json
    │           │   ├── Base.lproj/
    │           │   │   ├── LaunchScreen.storyboard
    │           │   │   └── Main.storyboard
    │           │   ├── Info.plist
    │           │   ├── UIStackView+Extension.swift
    │           │   └── ViewController.swift
    │           └── Challenge8-3.xcodeproj/
    │               ├── project.pbxproj
    │               └── project.xcworkspace/
    │                   ├── contents.xcworkspacedata
    │                   └── xcshareddata/
    │                       └── IDEWorkspaceChecks.plist
    └── table-views/
        ├── ch13-1-v1/
        │   ├── ch13-1-v1/
        │   │   ├── AppDelegate.swift
        │   │   ├── Assets.xcassets/
        │   │   │   ├── AppIcon.appiconset/
        │   │   │   │   └── Contents.json
        │   │   │   ├── Contents.json
        │   │   │   └── placeholder.imageset/
        │   │   │       └── Contents.json
        │   │   ├── Base.lproj/
        │   │   │   ├── LaunchScreen.storyboard
        │   │   │   └── Main.storyboard
        │   │   ├── Info.plist
        │   │   ├── Message.swift
        │   │   ├── MessageCell.swift
        │   │   ├── MessageDataSource.swift
        │   │   ├── MessageTableViewController.swift
        │   │   └── ReusableIdentifier.swift
        │   └── ch13-1-v1.xcodeproj/
        │       ├── project.pbxproj
        │       └── project.xcworkspace/
        │           ├── contents.xcworkspacedata
        │           └── xcshareddata/
        │               └── IDEWorkspaceChecks.plist
        ├── ch13-1-v2/
        │   ├── ch13-1-v2/
        │   │   ├── AppDelegate.swift
        │   │   ├── Assets.xcassets/
        │   │   │   ├── AppIcon.appiconset/
        │   │   │   │   └── Contents.json
        │   │   │   ├── Contents.json
        │   │   │   └── placeholder.imageset/
        │   │   │       └── Contents.json
        │   │   ├── Base.lproj/
        │   │   │   ├── LaunchScreen.storyboard
        │   │   │   └── Main.storyboard
        │   │   ├── Info.plist
        │   │   ├── Message.swift
        │   │   ├── MessageCell.swift
        │   │   ├── MessageDataSource.swift
        │   │   ├── MessageTableViewController.swift
        │   │   └── ReusableIdentifier.swift
        │   └── ch13-1-v2.xcodeproj/
        │       ├── project.pbxproj
        │       └── project.xcworkspace/
        │           ├── contents.xcworkspacedata
        │           └── xcshareddata/
        │               └── IDEWorkspaceChecks.plist
        ├── ch13-2-v1/
        │   ├── ch13-2-v1/
        │   │   ├── AppDelegate.swift
        │   │   ├── Assets.xcassets/
        │   │   │   ├── AppIcon.appiconset/
        │   │   │   │   └── Contents.json
        │   │   │   └── Contents.json
        │   │   ├── Base.lproj/
        │   │   │   ├── LaunchScreen.storyboard
        │   │   │   └── Main.storyboard
        │   │   ├── Book.swift
        │   │   ├── BookDataSource.swift
        │   │   ├── BookTableViewController.swift
        │   │   ├── Info.plist
        │   │   ├── ReusableIdentifier.swift
        │   │   └── TextViewCell.swift
        │   └── ch13-2-v1.xcodeproj/
        │       ├── project.pbxproj
        │       └── project.xcworkspace/
        │           ├── contents.xcworkspacedata
        │           └── xcshareddata/
        │               └── IDEWorkspaceChecks.plist
        └── ch13-2-v2/
            ├── ch13-2-v2/
            │   ├── AppDelegate.swift
            │   ├── Assets.xcassets/
            │   │   ├── AppIcon.appiconset/
            │   │   │   └── Contents.json
            │   │   └── Contents.json
            │   ├── Base.lproj/
            │   │   └── LaunchScreen.storyboard
            │   ├── Book.swift
            │   ├── BookDataSource.swift
            │   ├── BookTableViewController.swift
            │   ├── Info.plist
            │   ├── ReusableIdentifier.swift
            │   └── TextViewCell.swift
            └── ch13-2-v2.xcodeproj/
                ├── project.pbxproj
                └── project.xcworkspace/
                    ├── contents.xcworkspacedata
                    └── xcshareddata/
                        └── IDEWorkspaceChecks.plist
Condensed preview — 1546 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (6,188K chars).
[
  {
    "path": "LICENSE",
    "chars": 1515,
    "preview": "BSD 3-Clause License\n\nCopyright (c) 2018, Keith Harrison \nAll rights reserved.\n\nRedistribution and use in source and bin"
  },
  {
    "path": "README.md",
    "chars": 172,
    "preview": "# Modern Auto Layout\n\nSample code and solutions for my book on Auto Layout. Find out more about the book here:\n\n+ [Moder"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/Diamond.imageset/Contents.json",
    "chars": 520,
    "preview": "{\n  \"images\" : [\n    {\n      \"filename\" : \"diamond.pdf\",\n      \"idiom\" : \"universal\"\n    },\n    {\n      \"height-class\" :"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/Heart.imageset/Contents.json",
    "chars": 515,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"heart.pdf\"\n    },\n    {\n      \"idiom\" : \"univers"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Assets.xcassets/Star.imageset/Contents.json",
    "chars": 513,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"star.pdf\"\n    },\n    {\n      \"idiom\" : \"universa"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Base.lproj/Main.storyboard",
    "chars": 5553,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1/ViewController.swift",
    "chars": 1645,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1.xcodeproj/project.pbxproj",
    "chars": 12916,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptAsset-v1/AdaptAsset-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/AppDelegate.swift",
    "chars": 2045,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Assets.xcassets/buttonTemplate.imageset/Contents.json",
    "chars": 561,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"blue-button.pdf\",\n      \"resizing\" : {\n        \""
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/Info.plist",
    "chars": 1407,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1/ViewController.swift",
    "chars": 6656,
    "preview": "//  Copyright © 2018-2024 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms,"
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1.xcodeproj/project.pbxproj",
    "chars": 12311,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptConstraints-v1/AdaptConstraints-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Assets.xcassets/Sun.imageset/Contents.json",
    "chars": 221,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"Sun.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\" :"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Base.lproj/Main.storyboard",
    "chars": 7967,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1/ViewController.swift",
    "chars": 1645,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1.xcodeproj/project.pbxproj",
    "chars": 12857,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptLayout-v1/AdaptLayout-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/Diamond.imageset/Contents.json",
    "chars": 225,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"diamond.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"versio"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/Heart.imageset/Contents.json",
    "chars": 223,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"heart.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\""
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Assets.xcassets/Star.imageset/Contents.json",
    "chars": 222,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"star.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\" "
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Base.lproj/Main.storyboard",
    "chars": 5618,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1/ViewController.swift",
    "chars": 3648,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1.xcodeproj/project.pbxproj",
    "chars": 12819,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptSize-v1/AdaptSize-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/Diamond.imageset/Contents.json",
    "chars": 225,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"diamond.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"versio"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/Heart.imageset/Contents.json",
    "chars": 223,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"heart.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\""
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Assets.xcassets/Star.imageset/Contents.json",
    "chars": 222,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"star.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\" "
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Base.lproj/Main.storyboard",
    "chars": 5551,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1/ViewController.swift",
    "chars": 1645,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1.xcodeproj/project.pbxproj",
    "chars": 12916,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v1/AdaptStack-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/Diamond.imageset/Contents.json",
    "chars": 225,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"diamond.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"versio"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/Heart.imageset/Contents.json",
    "chars": 223,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"heart.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\""
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Assets.xcassets/Star.imageset/Contents.json",
    "chars": 222,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"star.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\" "
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Base.lproj/Main.storyboard",
    "chars": 5744,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2/ViewController.swift",
    "chars": 1645,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2.xcodeproj/project.pbxproj",
    "chars": 12838,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v2/AdaptStack-v2.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/AppDelegate.swift",
    "chars": 2289,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/Diamond.imageset/Contents.json",
    "chars": 225,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"diamond.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"versio"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/Heart.imageset/Contents.json",
    "chars": 223,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"heart.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\""
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Assets.xcassets/Star.imageset/Contents.json",
    "chars": 222,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"star.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\" "
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/Info.plist",
    "chars": 1407,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3/ViewController.swift",
    "chars": 3777,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3.xcodeproj/project.pbxproj",
    "chars": 12197,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v3/AdaptStack-v3.xcodeproj/xcshareddata/xcschemes/AdaptStack-v3.xcscheme",
    "chars": 3113,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"1610\"\n   version = \"1.3\">\n   <BuildAction\n      "
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/AppDelegate.swift",
    "chars": 2289,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/Assets.xcassets/Diamond.imageset/Contents.json",
    "chars": 225,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"diamond.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"versio"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/Assets.xcassets/Heart.imageset/Contents.json",
    "chars": 223,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"heart.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\""
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/Assets.xcassets/Star.imageset/Contents.json",
    "chars": 222,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"star.pdf\"\n    }\n  ],\n  \"info\" : {\n    \"version\" "
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/Info.plist",
    "chars": 1407,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4/ViewController.swift",
    "chars": 4803,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4.xcodeproj/project.pbxproj",
    "chars": 12197,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v4/AdaptStack-v4.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/AppDelegate.swift",
    "chars": 1660,
    "preview": "//  Copyright © 2023 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/Assets.xcassets/AccentColor.colorset/Contents.json",
    "chars": 123,
    "preview": "{\n  \"colors\" : [\n    {\n      \"idiom\" : \"universal\"\n    }\n  ],\n  \"info\" : {\n    \"author\" : \"xcode\",\n    \"version\" : 1\n  }"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 177,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"platform\" : \"ios\",\n      \"size\" : \"1024x1024\"\n    }\n  ],\n  \"i"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/Assets.xcassets/Contents.json",
    "chars": 63,
    "preview": "{\n  \"info\" : {\n    \"author\" : \"xcode\",\n    \"version\" : 1\n  }\n}\n"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/Assets.xcassets/Diamond.imageset/Contents.json",
    "chars": 226,
    "preview": "{\n  \"images\" : [\n    {\n      \"filename\" : \"diamond.pdf\",\n      \"idiom\" : \"universal\"\n    }\n  ],\n  \"info\" : {\n    \"author"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/Assets.xcassets/Heart.imageset/Contents.json",
    "chars": 224,
    "preview": "{\n  \"images\" : [\n    {\n      \"filename\" : \"heart.pdf\",\n      \"idiom\" : \"universal\"\n    }\n  ],\n  \"info\" : {\n    \"author\" "
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/Assets.xcassets/Star.imageset/Contents.json",
    "chars": 223,
    "preview": "{\n  \"images\" : [\n    {\n      \"filename\" : \"star.pdf\",\n      \"idiom\" : \"universal\"\n    }\n  ],\n  \"info\" : {\n    \"author\" :"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/Base.lproj/LaunchScreen.storyboard",
    "chars": 1665,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/Info.plist",
    "chars": 639,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/SceneDelegate.swift",
    "chars": 2339,
    "preview": "//  Copyright © 2023 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5/ViewController.swift",
    "chars": 3396,
    "preview": "//  Copyright © 2023 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5.xcodeproj/project.pbxproj",
    "chars": 14017,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptStack-v5/AdaptStack-v5.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1/Base.lproj/Localizable.stringsdict",
    "chars": 4487,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1/Base.lproj/Main.storyboard",
    "chars": 6908,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1/ViewController.swift",
    "chars": 2258,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1.xcodeproj/project.pbxproj",
    "chars": 13631,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptText-v1/AdaptText-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1/Base.lproj/Main.storyboard",
    "chars": 10705,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1/SettingsViewController.swift",
    "chars": 3425,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1.xcodeproj/project.pbxproj",
    "chars": 12885,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/adaptability/AdaptType-v1/AdaptType-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1/AppDelegate.swift",
    "chars": 2046,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1681,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1/Info.plist",
    "chars": 1407,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1/ViewController.swift",
    "chars": 3104,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1.xcodeproj/project.pbxproj",
    "chars": 12077,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 54;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v1/Anchors-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2/AppDelegate.swift",
    "chars": 2045,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2/Base.lproj/LaunchScreen.storyboard",
    "chars": 1816,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2/Info.plist",
    "chars": 1407,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2/StopGoView.swift",
    "chars": 3125,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2/ViewController.swift",
    "chars": 2410,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2.xcodeproj/project.pbxproj",
    "chars": 12508,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/creating-constraints-in-code/Anchors-v2/Anchors-v2.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1/AppDelegate.swift",
    "chars": 2045,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1681,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1/Info.plist",
    "chars": 1407,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1/ViewController.swift",
    "chars": 2973,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1.xcodeproj/project.pbxproj",
    "chars": 12287,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/creating-constraints-in-code/NSLayoutConstraint-v1/NSLayoutConstraint-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1/AppDelegate.swift",
    "chars": 2046,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1681,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1/Info.plist",
    "chars": 1407,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1/ViewController.swift",
    "chars": 3693,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1.xcodeproj/project.pbxproj",
    "chars": 12001,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 54;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/creating-constraints-in-code/VFL-v1/VFL-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1681,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1/Base.lproj/Main.storyboard",
    "chars": 1927,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1/ViewController.swift",
    "chars": 2493,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1.xcodeproj/project.pbxproj",
    "chars": 12738,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/debugging/Conflict-v1/Conflict-v1.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2/AppDelegate.swift",
    "chars": 2045,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2/Base.lproj/LaunchScreen.storyboard",
    "chars": 1658,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2/Info.plist",
    "chars": 1407,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2/ViewController.swift",
    "chars": 4532,
    "preview": "//  Copyright © 2018-2022 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms,"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2.xcodeproj/project.pbxproj",
    "chars": 12159,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/debugging/Conflict-v2/Conflict-v2.xcodeproj/xcshareddata/xcschemes/Conflict-v2.xcscheme",
    "chars": 2876,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"1620\"\n   version = \"1.3\">\n   <BuildAction\n      "
  },
  {
    "path": "sample-code/debugging/Loop-v1/Loop-v1/AppDelegate.swift",
    "chars": 1686,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/debugging/Loop-v1/Loop-v1/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "chars": 1590,
    "preview": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"iphone\",\n      \"size\" : \"20x20\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\""
  },
  {
    "path": "sample-code/debugging/Loop-v1/Loop-v1/Assets.xcassets/Contents.json",
    "chars": 62,
    "preview": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "sample-code/debugging/Loop-v1/Loop-v1/Base.lproj/LaunchScreen.storyboard",
    "chars": 1681,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard"
  },
  {
    "path": "sample-code/debugging/Loop-v1/Loop-v1/Base.lproj/Main.storyboard",
    "chars": 2903,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3"
  },
  {
    "path": "sample-code/debugging/Loop-v1/Loop-v1/Info.plist",
    "chars": 1463,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "sample-code/debugging/Loop-v1/Loop-v1/ViewController.swift",
    "chars": 1964,
    "preview": "//  Copyright © 2018 Keith Harrison. All rights reserved.\n//\n//  Redistribution and use in source and binary forms, with"
  },
  {
    "path": "sample-code/debugging/Loop-v1/Loop-v1.xcodeproj/project.pbxproj",
    "chars": 12662,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 60;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  }
]

// ... and 1346 more files (download for full content)

About this extraction

This page contains the full source code of the kharrison/albookcode GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 1546 files (5.4 MB), approximately 1.5M tokens. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!