wayfarer 0.4.8 → 0.4.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (610) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/release.yaml +0 -2
  3. data/Gemfile.lock +1 -1
  4. data/docs/guides/networking/custom_adapters.md +93 -86
  5. data/docs/guides/networking/http.md +1 -1
  6. data/docs/guides/routing.md +1 -1
  7. data/lib/wayfarer/middleware/base.rb +0 -4
  8. data/lib/wayfarer/middleware/controller.rb +1 -1
  9. data/lib/wayfarer/networking/context.rb +1 -1
  10. data/lib/wayfarer/networking/ferrum.rb +1 -1
  11. data/lib/wayfarer/networking/pool.rb +3 -9
  12. data/lib/wayfarer/networking/strategy.rb +6 -2
  13. data/lib/wayfarer/parsing.rb +1 -1
  14. data/lib/wayfarer.rb +9 -4
  15. data/rake/release.rake +0 -6
  16. data/spec/wayfarer/integration/page_spec.rb +9 -9
  17. data/spec/wayfarer/integration/parsing_spec.rb +3 -2
  18. data/spec/wayfarer/integration/stage_spec.rb +3 -3
  19. data/spec/wayfarer/middleware/controller_spec.rb +3 -4
  20. data/spec/wayfarer/networking/context_spec.rb +3 -2
  21. data/spec/wayfarer/networking/pool_spec.rb +1 -1
  22. data/spec/wayfarer/networking/strategy.rb +2 -2
  23. data/wayfarer.gemspec +1 -1
  24. metadata +1 -1172
  25. data/lib/wayfarer/middleware/lazy.rb +0 -11
  26. data/spec/support/static/git-scm.com/assets/application-38b0d42ff05ffea45841edebbd14b75b89585646153808e82907c2c5c11f324b.js +0 -772
  27. data/spec/support/static/git-scm.com/assets/application-cafcf280f67db0e6d8168ba98a38da878769a9d5f37793b68ffb963a02d185e0.css +0 -1
  28. data/spec/support/static/git-scm.com/assets/modernize-b3ebe0c31c24f230dc62179d3e1030d2e57a53b1668d9382c0a27dbd44a94beb.js +0 -20
  29. data/spec/support/static/git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Git-in-Bash.html +0 -751
  30. data/spec/support/static/git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Git-in-PowerShell.html +0 -804
  31. data/spec/support/static/git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Git-in-Sublime-Text.html +0 -728
  32. data/spec/support/static/git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Git-in-Visual-Studio-Code.html +0 -751
  33. data/spec/support/static/git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Git-in-Visual-Studio.html +0 -740
  34. data/spec/support/static/git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Git-in-Zsh.html +0 -765
  35. data/spec/support/static/git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Graphical-Interfaces.html +0 -931
  36. data/spec/support/static/git-scm.com/book/en/v2/Appendix-A:-Git-in-Other-Environments-Summary.html +0 -702
  37. data/spec/support/static/git-scm.com/book/en/v2/Appendix-B:-Embedding-Git-in-your-Applications-Command-line-Git.html +0 -720
  38. data/spec/support/static/git-scm.com/book/en/v2/Appendix-B:-Embedding-Git-in-your-Applications-Dulwich.html +0 -746
  39. data/spec/support/static/git-scm.com/book/en/v2/Appendix-B:-Embedding-Git-in-your-Applications-JGit.html +0 -889
  40. data/spec/support/static/git-scm.com/book/en/v2/Appendix-B:-Embedding-Git-in-your-Applications-Libgit2.html +0 -1003
  41. data/spec/support/static/git-scm.com/book/en/v2/Appendix-B:-Embedding-Git-in-your-Applications-go-git.html +0 -792
  42. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Administration.html +0 -745
  43. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Basic-Snapshotting.html +0 -840
  44. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Branching-and-Merging.html +0 -829
  45. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Debugging.html +0 -731
  46. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Email.html +0 -766
  47. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-External-Systems.html +0 -721
  48. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Getting-and-Creating-Projects.html +0 -746
  49. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Inspection-and-Comparison.html +0 -735
  50. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Patching.html +0 -742
  51. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Plumbing-Commands.html +0 -715
  52. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Setup-and-Config.html +0 -863
  53. data/spec/support/static/git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Sharing-and-Updating-Projects.html +0 -802
  54. data/spec/support/static/git-scm.com/book/en/v2/Customizing-Git-An-Example-Git-Enforced-Policy.html +0 -1200
  55. data/spec/support/static/git-scm.com/book/en/v2/Customizing-Git-Git-Attributes.html +0 -1134
  56. data/spec/support/static/git-scm.com/book/en/v2/Customizing-Git-Git-Configuration.html +0 -1315
  57. data/spec/support/static/git-scm.com/book/en/v2/Customizing-Git-Git-Hooks.html +0 -876
  58. data/spec/support/static/git-scm.com/book/en/v2/Customizing-Git-Summary.html +0 -704
  59. data/spec/support/static/git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project.html +0 -1667
  60. data/spec/support/static/git-scm.com/book/en/v2/Distributed-Git-Distributed-Workflows.html +0 -859
  61. data/spec/support/static/git-scm.com/book/en/v2/Distributed-Git-Maintaining-a-Project.html +0 -1354
  62. data/spec/support/static/git-scm.com/book/en/v2/Distributed-Git-Summary.html +0 -704
  63. data/spec/support/static/git-scm.com/book/en/v2/Getting-Started-A-Short-History-of-Git.html +0 -735
  64. data/spec/support/static/git-scm.com/book/en/v2/Getting-Started-About-Version-Control.html +0 -783
  65. data/spec/support/static/git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup.html +0 -889
  66. data/spec/support/static/git-scm.com/book/en/v2/Getting-Started-Getting-Help.html +0 -750
  67. data/spec/support/static/git-scm.com/book/en/v2/Getting-Started-Installing-Git.html +0 -879
  68. data/spec/support/static/git-scm.com/book/en/v2/Getting-Started-Summary.html +0 -704
  69. data/spec/support/static/git-scm.com/book/en/v2/Getting-Started-The-Command-Line.html +0 -711
  70. data/spec/support/static/git-scm.com/book/en/v2/Getting-Started-What-is-Git?.html +0 -857
  71. data/spec/support/static/git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository.html +0 -816
  72. data/spec/support/static/git-scm.com/book/en/v2/Git-Basics-Git-Aliases.html +0 -775
  73. data/spec/support/static/git-scm.com/book/en/v2/Git-Basics-Recording-Changes-to-the-Repository.html +0 -1432
  74. data/spec/support/static/git-scm.com/book/en/v2/Git-Basics-Summary.html +0 -703
  75. data/spec/support/static/git-scm.com/book/en/v2/Git-Basics-Tagging.html +0 -1049
  76. data/spec/support/static/git-scm.com/book/en/v2/Git-Basics-Undoing-Things.html +0 -998
  77. data/spec/support/static/git-scm.com/book/en/v2/Git-Basics-Viewing-the-Commit-History.html +0 -1172
  78. data/spec/support/static/git-scm.com/book/en/v2/Git-Basics-Working-with-Remotes.html +0 -983
  79. data/spec/support/static/git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging.html +0 -1102
  80. data/spec/support/static/git-scm.com/book/en/v2/Git-Branching-Branch-Management.html +0 -946
  81. data/spec/support/static/git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell.html +0 -1020
  82. data/spec/support/static/git-scm.com/book/en/v2/Git-Branching-Branching-Workflows.html +0 -786
  83. data/spec/support/static/git-scm.com/book/en/v2/Git-Branching-Rebasing.html +0 -1028
  84. data/spec/support/static/git-scm.com/book/en/v2/Git-Branching-Remote-Branches.html +0 -1009
  85. data/spec/support/static/git-scm.com/book/en/v2/Git-Branching-Summary.html +0 -705
  86. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-Environment-Variables.html +0 -1009
  87. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-Git-Objects.html +0 -1209
  88. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-Git-References.html +0 -939
  89. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-Maintenance-and-Data-Recovery.html +0 -1086
  90. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-Packfiles.html +0 -876
  91. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-Plumbing-and-Porcelain.html +0 -745
  92. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-Summary.html +0 -708
  93. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-The-Refspec.html +0 -872
  94. data/spec/support/static/git-scm.com/book/en/v2/Git-Internals-Transfer-Protocols.html +0 -1043
  95. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Advanced-Merging.html +0 -1605
  96. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Bundling.html +0 -888
  97. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Credential-Storage.html +0 -1035
  98. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Debugging-with-Git.html +0 -861
  99. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Interactive-Staging.html +0 -920
  100. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Replace.html +0 -949
  101. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Rerere.html +0 -983
  102. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Reset-Demystified.html +0 -1236
  103. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Revision-Selection.html +0 -1178
  104. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Rewriting-History.html +0 -1182
  105. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Searching.html +0 -875
  106. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work.html +0 -922
  107. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Stashing-and-Cleaning.html +0 -1039
  108. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Submodules.html +0 -1864
  109. data/spec/support/static/git-scm.com/book/en/v2/Git-Tools-Summary.html +0 -705
  110. data/spec/support/static/git-scm.com/book/en/v2/Git-and-Other-Systems-Git-as-a-Client.html +0 -2656
  111. data/spec/support/static/git-scm.com/book/en/v2/Git-and-Other-Systems-Migrating-to-Git.html +0 -1741
  112. data/spec/support/static/git-scm.com/book/en/v2/Git-and-Other-Systems-Summary.html +0 -703
  113. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-Generating-Your-SSH-Public-Key.html +0 -759
  114. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-Getting-Git-on-a-Server.html +0 -827
  115. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-Git-Daemon.html +0 -775
  116. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-GitLab.html +0 -872
  117. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-GitWeb.html +0 -776
  118. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server.html +0 -870
  119. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-Smart-HTTP.html +0 -789
  120. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-Summary.html +0 -709
  121. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-The-Protocols.html +0 -963
  122. data/spec/support/static/git-scm.com/book/en/v2/Git-on-the-Server-Third-Party-Hosted-Options.html +0 -711
  123. data/spec/support/static/git-scm.com/book/en/v2/GitHub-Account-Setup-and-Configuration.html +0 -858
  124. data/spec/support/static/git-scm.com/book/en/v2/GitHub-Contributing-to-a-Project.html +0 -1502
  125. data/spec/support/static/git-scm.com/book/en/v2/GitHub-Maintaining-a-Project.html +0 -1218
  126. data/spec/support/static/git-scm.com/book/en/v2/GitHub-Managing-an-organization.html +0 -797
  127. data/spec/support/static/git-scm.com/book/en/v2/GitHub-Scripting-GitHub.html +0 -1059
  128. data/spec/support/static/git-scm.com/book/en/v2/GitHub-Summary.html +0 -704
  129. data/spec/support/static/git-scm.com/book/en/v2/ch00/_abort_merge.html +0 -1605
  130. data/spec/support/static/git-scm.com/book/en/v2/ch00/_add_email_addresses.html +0 -858
  131. data/spec/support/static/git-scm.com/book/en/v2/ch00/_advanced_merging.html +0 -1605
  132. data/spec/support/static/git-scm.com/book/en/v2/ch00/_an_example_git_enforced_policy.html +0 -1200
  133. data/spec/support/static/git-scm.com/book/en/v2/ch00/_annotated_tags.html +0 -1049
  134. data/spec/support/static/git-scm.com/book/en/v2/ch00/_api_comment.html +0 -1059
  135. data/spec/support/static/git-scm.com/book/en/v2/ch00/_bare_repo.html +0 -827
  136. data/spec/support/static/git-scm.com/book/en/v2/ch00/_basic_branching.html +0 -1102
  137. data/spec/support/static/git-scm.com/book/en/v2/ch00/_basic_merge_conflicts.html +0 -1102
  138. data/spec/support/static/git-scm.com/book/en/v2/ch00/_basic_merging.html +0 -1102
  139. data/spec/support/static/git-scm.com/book/en/v2/ch00/_binary_search.html +0 -861
  140. data/spec/support/static/git-scm.com/book/en/v2/ch00/_branch_management.html +0 -946
  141. data/spec/support/static/git-scm.com/book/en/v2/ch00/_branch_references.html +0 -1178
  142. data/spec/support/static/git-scm.com/book/en/v2/ch00/_build_number.html +0 -1354
  143. data/spec/support/static/git-scm.com/book/en/v2/ch00/_bundling.html +0 -888
  144. data/spec/support/static/git-scm.com/book/en/v2/ch00/_changing_multiple.html +0 -1182
  145. data/spec/support/static/git-scm.com/book/en/v2/ch00/_checking_out_conflicts.html +0 -1605
  146. data/spec/support/static/git-scm.com/book/en/v2/ch00/_checking_out_remotes.html +0 -1354
  147. data/spec/support/static/git-scm.com/book/en/v2/ch00/_checking_status.html +0 -1432
  148. data/spec/support/static/git-scm.com/book/en/v2/ch00/_cloning_submodules.html +0 -1864
  149. data/spec/support/static/git-scm.com/book/en/v2/ch00/_commit_guidelines.html +0 -1667
  150. data/spec/support/static/git-scm.com/book/en/v2/ch00/_commit_ranges.html +0 -1178
  151. data/spec/support/static/git-scm.com/book/en/v2/ch00/_commit_status.html +0 -1059
  152. data/spec/support/static/git-scm.com/book/en/v2/ch00/_committing_changes.html +0 -1432
  153. data/spec/support/static/git-scm.com/book/en/v2/ch00/_contrib_file.html +0 -1218
  154. data/spec/support/static/git-scm.com/book/en/v2/ch00/_contributing_project.html +0 -1667
  155. data/spec/support/static/git-scm.com/book/en/v2/ch00/_create_new_branch.html +0 -1020
  156. data/spec/support/static/git-scm.com/book/en/v2/ch00/_credential_caching.html +0 -1035
  157. data/spec/support/static/git-scm.com/book/en/v2/ch00/_custom_importer.html +0 -1741
  158. data/spec/support/static/git-scm.com/book/en/v2/ch00/_data_recovery.html +0 -1086
  159. data/spec/support/static/git-scm.com/book/en/v2/ch00/_delete_branches.html +0 -1009
  160. data/spec/support/static/git-scm.com/book/en/v2/ch00/_editor.html +0 -889
  161. data/spec/support/static/git-scm.com/book/en/v2/ch00/_eg_task_lists.html +0 -1502
  162. data/spec/support/static/git-scm.com/book/en/v2/ch00/_email_hooks.html +0 -876
  163. data/spec/support/static/git-scm.com/book/en/v2/ch00/_email_notification.html +0 -1502
  164. data/spec/support/static/git-scm.com/book/en/v2/ch00/_email_notifications.html +0 -1218
  165. data/spec/support/static/git-scm.com/book/en/v2/ch00/_email_pr.html +0 -1218
  166. data/spec/support/static/git-scm.com/book/en/v2/ch00/_enforcing_commit_message_format.html +0 -1200
  167. data/spec/support/static/git-scm.com/book/en/v2/ch00/_example_markdown.html +0 -1502
  168. data/spec/support/static/git-scm.com/book/en/v2/ch00/_external_merge_tools.html +0 -1315
  169. data/spec/support/static/git-scm.com/book/en/v2/ch00/_fetch_and_push_on_different_repositories.html +0 -1502
  170. data/spec/support/static/git-scm.com/book/en/v2/ch00/_fetching_and_pulling.html +0 -983
  171. data/spec/support/static/git-scm.com/book/en/v2/ch00/_file_annotation.html +0 -861
  172. data/spec/support/static/git-scm.com/book/en/v2/ch00/_first_time.html +0 -889
  173. data/spec/support/static/git-scm.com/book/en/v2/ch00/_generate_ssh_key.html +0 -759
  174. data/spec/support/static/git-scm.com/book/en/v2/ch00/_getting_a_repo.html +0 -816
  175. data/spec/support/static/git-scm.com/book/en/v2/ch00/_getting_git_on_a_server.html +0 -827
  176. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_aliases.html +0 -775
  177. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_am.html +0 -1354
  178. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_amend.html +0 -1182
  179. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_branches_overview.html +0 -1020
  180. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_clean.html +0 -1039
  181. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_cloning.html +0 -816
  182. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_commit_objects.html +0 -1209
  183. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_config.html +0 -1315
  184. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_diff_staged.html +0 -1432
  185. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_gc.html +0 -1086
  186. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_grep.html +0 -875
  187. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_help.html +0 -750
  188. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_hooks.html +0 -876
  189. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_mv.html +0 -1432
  190. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_p4.html +0 -1741
  191. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_p4_branches.html +0 -2656
  192. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_reflog.html +0 -1178
  193. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_refs.html +0 -939
  194. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_reset.html +0 -1236
  195. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_stashing.html +0 -1039
  196. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_submodules.html +0 -1864
  197. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_svn.html +0 -2656
  198. data/spec/support/static/git-scm.com/book/en/v2/ch00/_git_tagging.html +0 -1049
  199. data/spec/support/static/git-scm.com/book/en/v2/ch00/_gitlab_groups_section.html +0 -872
  200. data/spec/support/static/git-scm.com/book/en/v2/ch00/_ignoring.html +0 -1432
  201. data/spec/support/static/git-scm.com/book/en/v2/ch00/_inspecting_remote.html +0 -983
  202. data/spec/support/static/git-scm.com/book/en/v2/ch00/_integration_manager.html +0 -859
  203. data/spec/support/static/git-scm.com/book/en/v2/ch00/_interactive_staging.html +0 -920
  204. data/spec/support/static/git-scm.com/book/en/v2/ch00/_keyword_expansion.html +0 -1134
  205. data/spec/support/static/git-scm.com/book/en/v2/ch00/_libgit2_bindings.html +0 -1003
  206. data/spec/support/static/git-scm.com/book/en/v2/ch00/_manual_remerge.html +0 -1605
  207. data/spec/support/static/git-scm.com/book/en/v2/ch00/_md_code.html +0 -1502
  208. data/spec/support/static/git-scm.com/book/en/v2/ch00/_md_drag.html +0 -1502
  209. data/spec/support/static/git-scm.com/book/en/v2/ch00/_md_emoji.html +0 -1502
  210. data/spec/support/static/git-scm.com/book/en/v2/ch00/_md_quote.html +0 -1502
  211. data/spec/support/static/git-scm.com/book/en/v2/ch00/_merge_button.html +0 -1218
  212. data/spec/support/static/git-scm.com/book/en/v2/ch00/_merge_log.html +0 -1605
  213. data/spec/support/static/git-scm.com/book/en/v2/ch00/_merge_rebase_work.html +0 -1028
  214. data/spec/support/static/git-scm.com/book/en/v2/ch00/_new_repo_dropdown.html +0 -1218
  215. data/spec/support/static/git-scm.com/book/en/v2/ch00/_not_center.html +0 -1218
  216. data/spec/support/static/git-scm.com/book/en/v2/ch00/_org_page.html +0 -797
  217. data/spec/support/static/git-scm.com/book/en/v2/ch00/_other_client_hooks.html +0 -876
  218. data/spec/support/static/git-scm.com/book/en/v2/ch00/_p4_git_fusion.html +0 -2656
  219. data/spec/support/static/git-scm.com/book/en/v2/ch00/_patches_from_email.html +0 -1354
  220. data/spec/support/static/git-scm.com/book/en/v2/ch00/_personal_avatar.html +0 -858
  221. data/spec/support/static/git-scm.com/book/en/v2/ch00/_plumbing_porcelain.html +0 -745
  222. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pr_closed.html +0 -1502
  223. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pr_discussion.html +0 -1502
  224. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pr_fail.html +0 -1502
  225. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pr_final.html +0 -1502
  226. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pr_references.html +0 -1502
  227. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pr_references_render.html +0 -1502
  228. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pr_refs.html +0 -1218
  229. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pre_merge_rebase_work.html +0 -1028
  230. data/spec/support/static/git-scm.com/book/en/v2/ch00/_preparing_release.html +0 -1354
  231. data/spec/support/static/git-scm.com/book/en/v2/ch00/_private_team.html +0 -1667
  232. data/spec/support/static/git-scm.com/book/en/v2/ch00/_project_over_email.html +0 -1667
  233. data/spec/support/static/git-scm.com/book/en/v2/ch00/_public_project.html +0 -1667
  234. data/spec/support/static/git-scm.com/book/en/v2/ch00/_publishing_submodules.html +0 -1864
  235. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pushing_branches.html +0 -1009
  236. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pushing_refspecs.html +0 -872
  237. data/spec/support/static/git-scm.com/book/en/v2/ch00/_pushing_remotes.html +0 -983
  238. data/spec/support/static/git-scm.com/book/en/v2/ch00/_rebase_cherry_pick.html +0 -1354
  239. data/spec/support/static/git-scm.com/book/en/v2/ch00/_rebase_peril.html +0 -1028
  240. data/spec/support/static/git-scm.com/book/en/v2/ch00/_rebase_rebase.html +0 -1028
  241. data/spec/support/static/git-scm.com/book/en/v2/ch00/_rebase_rebase_work.html +0 -1028
  242. data/spec/support/static/git-scm.com/book/en/v2/ch00/_rebasing.html +0 -1028
  243. data/spec/support/static/git-scm.com/book/en/v2/ch00/_refspec.html +0 -872
  244. data/spec/support/static/git-scm.com/book/en/v2/ch00/_remote_branches.html +0 -1009
  245. data/spec/support/static/git-scm.com/book/en/v2/ch00/_remote_repos.html +0 -983
  246. data/spec/support/static/git-scm.com/book/en/v2/ch00/_removing_file_every_commit.html +0 -1182
  247. data/spec/support/static/git-scm.com/book/en/v2/ch00/_removing_files.html +0 -1432
  248. data/spec/support/static/git-scm.com/book/en/v2/ch00/_removing_objects.html +0 -1086
  249. data/spec/support/static/git-scm.com/book/en/v2/ch00/_replace.html +0 -949
  250. data/spec/support/static/git-scm.com/book/en/v2/ch00/_reverse_commit.html +0 -1605
  251. data/spec/support/static/git-scm.com/book/en/v2/ch00/_revision_selection.html +0 -1178
  252. data/spec/support/static/git-scm.com/book/en/v2/ch00/_rewriting_history.html +0 -1182
  253. data/spec/support/static/git-scm.com/book/en/v2/ch00/_searching.html +0 -875
  254. data/spec/support/static/git-scm.com/book/en/v2/ch00/_service_config.html +0 -1059
  255. data/spec/support/static/git-scm.com/book/en/v2/ch00/_services_hooks.html +0 -1059
  256. data/spec/support/static/git-scm.com/book/en/v2/ch00/_setting_up_server.html +0 -870
  257. data/spec/support/static/git-scm.com/book/en/v2/ch00/_sharing_tags.html +0 -1049
  258. data/spec/support/static/git-scm.com/book/en/v2/ch00/_signing.html +0 -922
  259. data/spec/support/static/git-scm.com/book/en/v2/ch00/_signing_commits.html +0 -922
  260. data/spec/support/static/git-scm.com/book/en/v2/ch00/_squashing.html +0 -1182
  261. data/spec/support/static/git-scm.com/book/en/v2/ch00/_starting_submodules.html +0 -1864
  262. data/spec/support/static/git-scm.com/book/en/v2/ch00/_subtree_merge.html +0 -1605
  263. data/spec/support/static/git-scm.com/book/en/v2/ch00/_switching_branches.html +0 -1020
  264. data/spec/support/static/git-scm.com/book/en/v2/ch00/_tagging_releases.html +0 -1354
  265. data/spec/support/static/git-scm.com/book/en/v2/ch00/_task_list_progress.html +0 -1502
  266. data/spec/support/static/git-scm.com/book/en/v2/ch00/_team_page.html +0 -797
  267. data/spec/support/static/git-scm.com/book/en/v2/ch00/_the_index.html +0 -1236
  268. data/spec/support/static/git-scm.com/book/en/v2/ch00/_the_shortlog.html +0 -1354
  269. data/spec/support/static/git-scm.com/book/en/v2/ch00/_topic_branch.html +0 -786
  270. data/spec/support/static/git-scm.com/book/en/v2/ch00/_tracking_branches.html +0 -1009
  271. data/spec/support/static/git-scm.com/book/en/v2/ch00/_tracking_files.html +0 -1432
  272. data/spec/support/static/git-scm.com/book/en/v2/ch00/_tree_objects.html +0 -1209
  273. data/spec/support/static/git-scm.com/book/en/v2/ch00/_triple_dot.html +0 -1178
  274. data/spec/support/static/git-scm.com/book/en/v2/ch00/_undoing.html +0 -998
  275. data/spec/support/static/git-scm.com/book/en/v2/ch00/_unstaging.html +0 -998
  276. data/spec/support/static/git-scm.com/book/en/v2/ch00/_viewing_history.html +0 -1172
  277. data/spec/support/static/git-scm.com/book/en/v2/ch00/_web_hook.html +0 -1059
  278. data/spec/support/static/git-scm.com/book/en/v2/ch00/_what_is_introduced.html +0 -1354
  279. data/spec/support/static/git-scm.com/book/en/v2/ch00/ch01-getting-started.html +0 -783
  280. data/spec/support/static/git-scm.com/book/en/v2/ch00/ch02-git-basics-chapter.html +0 -816
  281. data/spec/support/static/git-scm.com/book/en/v2/ch00/ch03-git-branching.html +0 -1020
  282. data/spec/support/static/git-scm.com/book/en/v2/ch00/ch05-distributed-git.html +0 -859
  283. data/spec/support/static/git-scm.com/book/en/v2/ch00/ch06-github.html +0 -858
  284. data/spec/support/static/git-scm.com/book/en/v2/ch00/ch06-github_flow.html +0 -1502
  285. data/spec/support/static/git-scm.com/book/en/v2/ch00/ch10-git-internals.html +0 -745
  286. data/spec/support/static/git-scm.com/book/en/v2/ch00/ch_core_editor.html +0 -863
  287. data/spec/support/static/git-scm.com/book/en/v2/ch00/divergent_history.html +0 -1020
  288. data/spec/support/static/git-scm.com/book/en/v2/ch00/double_dot.html +0 -1178
  289. data/spec/support/static/git-scm.com/book/en/v2/ch00/filters_a.html +0 -1134
  290. data/spec/support/static/git-scm.com/book/en/v2/ch00/filters_b.html +0 -1134
  291. data/spec/support/static/git-scm.com/book/en/v2/ch00/limit_options.html +0 -1172
  292. data/spec/support/static/git-scm.com/book/en/v2/ch00/log_options.html +0 -1172
  293. data/spec/support/static/git-scm.com/book/en/v2/ch00/merwf_a.html +0 -1354
  294. data/spec/support/static/git-scm.com/book/en/v2/ch00/merwf_b.html +0 -1354
  295. data/spec/support/static/git-scm.com/book/en/v2/ch00/merwf_c.html +0 -1354
  296. data/spec/support/static/git-scm.com/book/en/v2/ch00/merwf_d.html +0 -1354
  297. data/spec/support/static/git-scm.com/book/en/v2/ch00/merwf_e.html +0 -1354
  298. data/spec/support/static/git-scm.com/book/en/v2/ch00/merwf_f.html +0 -1354
  299. data/spec/support/static/git-scm.com/book/en/v2/ch00/oh_my_zsh_git.html +0 -765
  300. data/spec/support/static/git-scm.com/book/en/v2/ch00/pretty_format.html +0 -1172
  301. data/spec/support/static/git-scm.com/book/en/v2/ch00/psp_b.html +0 -1667
  302. data/spec/support/static/git-scm.com/book/en/v2/ch00/rbdiag_e.html +0 -1028
  303. data/spec/support/static/git-scm.com/book/en/v2/ch00/rbdiag_g.html +0 -1028
  304. data/spec/support/static/git-scm.com/book/en/v2/ch00/rbdiag_h.html +0 -1028
  305. data/spec/support/static/git-scm.com/book/en/v2/ch00/rbdiag_i.html +0 -1028
  306. data/spec/support/static/git-scm.com/book/en/v2/ch00/rebasing-merging-example.html +0 -1028
  307. data/spec/support/static/git-scm.com/book/en/v2/ch00/ref_rerere.html +0 -983
  308. data/spec/support/static/git-scm.com/book/en/v2/ch00/ref_the_ref.html +0 -939
  309. data/spec/support/static/git-scm.com/book/en/v2/ch00/wfdiag_b.html +0 -859
  310. data/spec/support/static/git-scm.com/book/en/v2/ch00/wfdiag_c.html +0 -859
  311. data/spec/support/static/git-scm.com/book/en/v2/ch00/what_is_git_section.html +0 -857
  312. data/spec/support/static/git-scm.com/book/en/v2/images/2fa-1.png +0 -0
  313. data/spec/support/static/git-scm.com/book/en/v2/images/account-settings.png +0 -0
  314. data/spec/support/static/git-scm.com/book/en/v2/images/advance-master.png +0 -0
  315. data/spec/support/static/git-scm.com/book/en/v2/images/advance-testing.png +0 -0
  316. data/spec/support/static/git-scm.com/book/en/v2/images/areas.png +0 -0
  317. data/spec/support/static/git-scm.com/book/en/v2/images/avatar-crop.png +0 -0
  318. data/spec/support/static/git-scm.com/book/en/v2/images/basic-branching-1.png +0 -0
  319. data/spec/support/static/git-scm.com/book/en/v2/images/basic-branching-2.png +0 -0
  320. data/spec/support/static/git-scm.com/book/en/v2/images/basic-branching-3.png +0 -0
  321. data/spec/support/static/git-scm.com/book/en/v2/images/basic-branching-4.png +0 -0
  322. data/spec/support/static/git-scm.com/book/en/v2/images/basic-branching-5.png +0 -0
  323. data/spec/support/static/git-scm.com/book/en/v2/images/basic-branching-6.png +0 -0
  324. data/spec/support/static/git-scm.com/book/en/v2/images/basic-merging-1.png +0 -0
  325. data/spec/support/static/git-scm.com/book/en/v2/images/basic-merging-2.png +0 -0
  326. data/spec/support/static/git-scm.com/book/en/v2/images/basic-rebase-1.png +0 -0
  327. data/spec/support/static/git-scm.com/book/en/v2/images/basic-rebase-2.png +0 -0
  328. data/spec/support/static/git-scm.com/book/en/v2/images/basic-rebase-3.png +0 -0
  329. data/spec/support/static/git-scm.com/book/en/v2/images/basic-rebase-4.png +0 -0
  330. data/spec/support/static/git-scm.com/book/en/v2/images/benevolent-dictator.png +0 -0
  331. data/spec/support/static/git-scm.com/book/en/v2/images/blink-01-start.png +0 -0
  332. data/spec/support/static/git-scm.com/book/en/v2/images/blink-02-pr.png +0 -0
  333. data/spec/support/static/git-scm.com/book/en/v2/images/blink-03-pull-request-open.png +0 -0
  334. data/spec/support/static/git-scm.com/book/en/v2/images/blink-04-email.png +0 -0
  335. data/spec/support/static/git-scm.com/book/en/v2/images/blink-04-pr-comment.png +0 -0
  336. data/spec/support/static/git-scm.com/book/en/v2/images/blink-05-general-comment.png +0 -0
  337. data/spec/support/static/git-scm.com/book/en/v2/images/blink-06-final.png +0 -0
  338. data/spec/support/static/git-scm.com/book/en/v2/images/branch-and-history.png +0 -0
  339. data/spec/support/static/git-scm.com/book/en/v2/images/branch_widget_mac.png +0 -0
  340. data/spec/support/static/git-scm.com/book/en/v2/images/branch_widget_win.png +0 -0
  341. data/spec/support/static/git-scm.com/book/en/v2/images/centralized.png +0 -0
  342. data/spec/support/static/git-scm.com/book/en/v2/images/centralized_workflow.png +0 -0
  343. data/spec/support/static/git-scm.com/book/en/v2/images/checkout-master.png +0 -0
  344. data/spec/support/static/git-scm.com/book/en/v2/images/clean.png +0 -0
  345. data/spec/support/static/git-scm.com/book/en/v2/images/collaborators.png +0 -0
  346. data/spec/support/static/git-scm.com/book/en/v2/images/commit-and-tree.png +0 -0
  347. data/spec/support/static/git-scm.com/book/en/v2/images/commits-and-parents.png +0 -0
  348. data/spec/support/static/git-scm.com/book/en/v2/images/data-model-1.png +0 -0
  349. data/spec/support/static/git-scm.com/book/en/v2/images/data-model-2.png +0 -0
  350. data/spec/support/static/git-scm.com/book/en/v2/images/data-model-3.png +0 -0
  351. data/spec/support/static/git-scm.com/book/en/v2/images/data-model-4.png +0 -0
  352. data/spec/support/static/git-scm.com/book/en/v2/images/deltas.png +0 -0
  353. data/spec/support/static/git-scm.com/book/en/v2/images/distributed.png +0 -0
  354. data/spec/support/static/git-scm.com/book/en/v2/images/double-dot.png +0 -0
  355. data/spec/support/static/git-scm.com/book/en/v2/images/email-settings.png +0 -0
  356. data/spec/support/static/git-scm.com/book/en/v2/images/forkbutton.png +0 -0
  357. data/spec/support/static/git-scm.com/book/en/v2/images/git-bash.png +0 -0
  358. data/spec/support/static/git-scm.com/book/en/v2/images/git-diff-check.png +0 -0
  359. data/spec/support/static/git-scm.com/book/en/v2/images/git-fusion-boot.png +0 -0
  360. data/spec/support/static/git-scm.com/book/en/v2/images/git-fusion-perforce-graph.png +0 -0
  361. data/spec/support/static/git-scm.com/book/en/v2/images/git-gui.png +0 -0
  362. data/spec/support/static/git-scm.com/book/en/v2/images/git-instaweb.png +0 -0
  363. data/spec/support/static/git-scm.com/book/en/v2/images/git-osx-installer.png +0 -0
  364. data/spec/support/static/git-scm.com/book/en/v2/images/github_mac.png +0 -0
  365. data/spec/support/static/git-scm.com/book/en/v2/images/github_win.png +0 -0
  366. data/spec/support/static/git-scm.com/book/en/v2/images/gitk.png +0 -0
  367. data/spec/support/static/git-scm.com/book/en/v2/images/gitlab-groups.png +0 -0
  368. data/spec/support/static/git-scm.com/book/en/v2/images/gitlab-menu.png +0 -0
  369. data/spec/support/static/git-scm.com/book/en/v2/images/gitlab-users.png +0 -0
  370. data/spec/support/static/git-scm.com/book/en/v2/images/head-to-master.png +0 -0
  371. data/spec/support/static/git-scm.com/book/en/v2/images/head-to-testing.png +0 -0
  372. data/spec/support/static/git-scm.com/book/en/v2/images/integration-manager.png +0 -0
  373. data/spec/support/static/git-scm.com/book/en/v2/images/interesting-rebase-1.png +0 -0
  374. data/spec/support/static/git-scm.com/book/en/v2/images/interesting-rebase-2.png +0 -0
  375. data/spec/support/static/git-scm.com/book/en/v2/images/interesting-rebase-3.png +0 -0
  376. data/spec/support/static/git-scm.com/book/en/v2/images/interesting-rebase-4.png +0 -0
  377. data/spec/support/static/git-scm.com/book/en/v2/images/interesting-rebase-5.png +0 -0
  378. data/spec/support/static/git-scm.com/book/en/v2/images/jb.png +0 -0
  379. data/spec/support/static/git-scm.com/book/en/v2/images/large-merges-1.png +0 -0
  380. data/spec/support/static/git-scm.com/book/en/v2/images/large-merges-2.png +0 -0
  381. data/spec/support/static/git-scm.com/book/en/v2/images/lifecycle.png +0 -0
  382. data/spec/support/static/git-scm.com/book/en/v2/images/local.png +0 -0
  383. data/spec/support/static/git-scm.com/book/en/v2/images/lr-branches-1.png +0 -0
  384. data/spec/support/static/git-scm.com/book/en/v2/images/lr-branches-2.png +0 -0
  385. data/spec/support/static/git-scm.com/book/en/v2/images/maint-01-email.png +0 -0
  386. data/spec/support/static/git-scm.com/book/en/v2/images/maint-02-merge.png +0 -0
  387. data/spec/support/static/git-scm.com/book/en/v2/images/maint-03-email-resp.png +0 -0
  388. data/spec/support/static/git-scm.com/book/en/v2/images/maint-04-target.png +0 -0
  389. data/spec/support/static/git-scm.com/book/en/v2/images/maint-05-mentions.png +0 -0
  390. data/spec/support/static/git-scm.com/book/en/v2/images/maint-06-unsubscribe.png +0 -0
  391. data/spec/support/static/git-scm.com/book/en/v2/images/maint-07-notifications.png +0 -0
  392. data/spec/support/static/git-scm.com/book/en/v2/images/maint-08-notifications-page.png +0 -0
  393. data/spec/support/static/git-scm.com/book/en/v2/images/maint-09-contrib.png +0 -0
  394. data/spec/support/static/git-scm.com/book/en/v2/images/maint-10-default-branch.png +0 -0
  395. data/spec/support/static/git-scm.com/book/en/v2/images/maint-11-transfer.png +0 -0
  396. data/spec/support/static/git-scm.com/book/en/v2/images/managed-team-1.png +0 -0
  397. data/spec/support/static/git-scm.com/book/en/v2/images/managed-team-2.png +0 -0
  398. data/spec/support/static/git-scm.com/book/en/v2/images/managed-team-3.png +0 -0
  399. data/spec/support/static/git-scm.com/book/en/v2/images/managed-team-flow.png +0 -0
  400. data/spec/support/static/git-scm.com/book/en/v2/images/markdown-01-example.png +0 -0
  401. data/spec/support/static/git-scm.com/book/en/v2/images/markdown-02-tasks.png +0 -0
  402. data/spec/support/static/git-scm.com/book/en/v2/images/markdown-03-task-summary.png +0 -0
  403. data/spec/support/static/git-scm.com/book/en/v2/images/markdown-04-fenced-code.png +0 -0
  404. data/spec/support/static/git-scm.com/book/en/v2/images/markdown-05-quote.png +0 -0
  405. data/spec/support/static/git-scm.com/book/en/v2/images/markdown-06-emoji-complete.png +0 -0
  406. data/spec/support/static/git-scm.com/book/en/v2/images/markdown-07-emoji.png +0 -0
  407. data/spec/support/static/git-scm.com/book/en/v2/images/markdown-08-drag-drop.png +0 -0
  408. data/spec/support/static/git-scm.com/book/en/v2/images/mentions-01-syntax.png +0 -0
  409. data/spec/support/static/git-scm.com/book/en/v2/images/mentions-02-render.png +0 -0
  410. data/spec/support/static/git-scm.com/book/en/v2/images/mentions-03-closed.png +0 -0
  411. data/spec/support/static/git-scm.com/book/en/v2/images/merging-workflows-1.png +0 -0
  412. data/spec/support/static/git-scm.com/book/en/v2/images/merging-workflows-2.png +0 -0
  413. data/spec/support/static/git-scm.com/book/en/v2/images/merging-workflows-3.png +0 -0
  414. data/spec/support/static/git-scm.com/book/en/v2/images/merging-workflows-4.png +0 -0
  415. data/spec/support/static/git-scm.com/book/en/v2/images/merging-workflows-5.png +0 -0
  416. data/spec/support/static/git-scm.com/book/en/v2/images/new-repo.png +0 -0
  417. data/spec/support/static/git-scm.com/book/en/v2/images/neworg.png +0 -0
  418. data/spec/support/static/git-scm.com/book/en/v2/images/newrepo.png +0 -0
  419. data/spec/support/static/git-scm.com/book/en/v2/images/newrepoform.png +0 -0
  420. data/spec/support/static/git-scm.com/book/en/v2/images/orgs-01-page.png +0 -0
  421. data/spec/support/static/git-scm.com/book/en/v2/images/orgs-02-teams.png +0 -0
  422. data/spec/support/static/git-scm.com/book/en/v2/images/orgs-03-audit.png +0 -0
  423. data/spec/support/static/git-scm.com/book/en/v2/images/p4merge.png +0 -0
  424. data/spec/support/static/git-scm.com/book/en/v2/images/perils-of-rebasing-1.png +0 -0
  425. data/spec/support/static/git-scm.com/book/en/v2/images/perils-of-rebasing-2.png +0 -0
  426. data/spec/support/static/git-scm.com/book/en/v2/images/perils-of-rebasing-3.png +0 -0
  427. data/spec/support/static/git-scm.com/book/en/v2/images/perils-of-rebasing-4.png +0 -0
  428. data/spec/support/static/git-scm.com/book/en/v2/images/perils-of-rebasing-5.png +0 -0
  429. data/spec/support/static/git-scm.com/book/en/v2/images/posh-git.png +0 -0
  430. data/spec/support/static/git-scm.com/book/en/v2/images/pr-01-fail.png +0 -0
  431. data/spec/support/static/git-scm.com/book/en/v2/images/pr-02-merge-fix.png +0 -0
  432. data/spec/support/static/git-scm.com/book/en/v2/images/public-small-1.png +0 -0
  433. data/spec/support/static/git-scm.com/book/en/v2/images/public-small-2.png +0 -0
  434. data/spec/support/static/git-scm.com/book/en/v2/images/public-small-3.png +0 -0
  435. data/spec/support/static/git-scm.com/book/en/v2/images/rebasing-1.png +0 -0
  436. data/spec/support/static/git-scm.com/book/en/v2/images/rebasing-2.png +0 -0
  437. data/spec/support/static/git-scm.com/book/en/v2/images/remote-branches-1.png +0 -0
  438. data/spec/support/static/git-scm.com/book/en/v2/images/remote-branches-2.png +0 -0
  439. data/spec/support/static/git-scm.com/book/en/v2/images/remote-branches-3.png +0 -0
  440. data/spec/support/static/git-scm.com/book/en/v2/images/remote-branches-4.png +0 -0
  441. data/spec/support/static/git-scm.com/book/en/v2/images/remote-branches-5.png +0 -0
  442. data/spec/support/static/git-scm.com/book/en/v2/images/replace1.png +0 -0
  443. data/spec/support/static/git-scm.com/book/en/v2/images/replace2.png +0 -0
  444. data/spec/support/static/git-scm.com/book/en/v2/images/replace3.png +0 -0
  445. data/spec/support/static/git-scm.com/book/en/v2/images/replace4.png +0 -0
  446. data/spec/support/static/git-scm.com/book/en/v2/images/replace5.png +0 -0
  447. data/spec/support/static/git-scm.com/book/en/v2/images/reposettingslink.png +0 -0
  448. data/spec/support/static/git-scm.com/book/en/v2/images/rerere1.png +0 -0
  449. data/spec/support/static/git-scm.com/book/en/v2/images/rerere2.png +0 -0
  450. data/spec/support/static/git-scm.com/book/en/v2/images/rerere3.png +0 -0
  451. data/spec/support/static/git-scm.com/book/en/v2/images/reset-checkout.png +0 -0
  452. data/spec/support/static/git-scm.com/book/en/v2/images/reset-ex1.png +0 -0
  453. data/spec/support/static/git-scm.com/book/en/v2/images/reset-ex2.png +0 -0
  454. data/spec/support/static/git-scm.com/book/en/v2/images/reset-ex3.png +0 -0
  455. data/spec/support/static/git-scm.com/book/en/v2/images/reset-ex4.png +0 -0
  456. data/spec/support/static/git-scm.com/book/en/v2/images/reset-ex5.png +0 -0
  457. data/spec/support/static/git-scm.com/book/en/v2/images/reset-ex6.png +0 -0
  458. data/spec/support/static/git-scm.com/book/en/v2/images/reset-hard.png +0 -0
  459. data/spec/support/static/git-scm.com/book/en/v2/images/reset-mixed.png +0 -0
  460. data/spec/support/static/git-scm.com/book/en/v2/images/reset-path1.png +0 -0
  461. data/spec/support/static/git-scm.com/book/en/v2/images/reset-path2.png +0 -0
  462. data/spec/support/static/git-scm.com/book/en/v2/images/reset-path3.png +0 -0
  463. data/spec/support/static/git-scm.com/book/en/v2/images/reset-soft.png +0 -0
  464. data/spec/support/static/git-scm.com/book/en/v2/images/reset-squash-r1.png +0 -0
  465. data/spec/support/static/git-scm.com/book/en/v2/images/reset-squash-r2.png +0 -0
  466. data/spec/support/static/git-scm.com/book/en/v2/images/reset-squash-r3.png +0 -0
  467. data/spec/support/static/git-scm.com/book/en/v2/images/reset-start.png +0 -0
  468. data/spec/support/static/git-scm.com/book/en/v2/images/reset-workflow.png +0 -0
  469. data/spec/support/static/git-scm.com/book/en/v2/images/scripting-01-services.png +0 -0
  470. data/spec/support/static/git-scm.com/book/en/v2/images/scripting-02-email-service.png +0 -0
  471. data/spec/support/static/git-scm.com/book/en/v2/images/scripting-03-webhook.png +0 -0
  472. data/spec/support/static/git-scm.com/book/en/v2/images/scripting-04-webhook-debug.png +0 -0
  473. data/spec/support/static/git-scm.com/book/en/v2/images/scripting-05-access-token.png +0 -0
  474. data/spec/support/static/git-scm.com/book/en/v2/images/scripting-06-comment.png +0 -0
  475. data/spec/support/static/git-scm.com/book/en/v2/images/scripting-07-status.png +0 -0
  476. data/spec/support/static/git-scm.com/book/en/v2/images/signup.png +0 -0
  477. data/spec/support/static/git-scm.com/book/en/v2/images/small-team-1.png +0 -0
  478. data/spec/support/static/git-scm.com/book/en/v2/images/small-team-2.png +0 -0
  479. data/spec/support/static/git-scm.com/book/en/v2/images/small-team-3.png +0 -0
  480. data/spec/support/static/git-scm.com/book/en/v2/images/small-team-4.png +0 -0
  481. data/spec/support/static/git-scm.com/book/en/v2/images/small-team-5.png +0 -0
  482. data/spec/support/static/git-scm.com/book/en/v2/images/small-team-6.png +0 -0
  483. data/spec/support/static/git-scm.com/book/en/v2/images/small-team-7.png +0 -0
  484. data/spec/support/static/git-scm.com/book/en/v2/images/small-team-flow.png +0 -0
  485. data/spec/support/static/git-scm.com/book/en/v2/images/smudge.png +0 -0
  486. data/spec/support/static/git-scm.com/book/en/v2/images/snapshots.png +0 -0
  487. data/spec/support/static/git-scm.com/book/en/v2/images/ssh-keys.png +0 -0
  488. data/spec/support/static/git-scm.com/book/en/v2/images/topic-branches-1.png +0 -0
  489. data/spec/support/static/git-scm.com/book/en/v2/images/topic-branches-2.png +0 -0
  490. data/spec/support/static/git-scm.com/book/en/v2/images/two-branches.png +0 -0
  491. data/spec/support/static/git-scm.com/book/en/v2/images/undomerge-reset.png +0 -0
  492. data/spec/support/static/git-scm.com/book/en/v2/images/undomerge-revert.png +0 -0
  493. data/spec/support/static/git-scm.com/book/en/v2/images/undomerge-revert2.png +0 -0
  494. data/spec/support/static/git-scm.com/book/en/v2/images/undomerge-revert3.png +0 -0
  495. data/spec/support/static/git-scm.com/book/en/v2/images/undomerge-start.png +0 -0
  496. data/spec/support/static/git-scm.com/book/en/v2/images/your-profile.png +0 -0
  497. data/spec/support/static/git-scm.com/book/en/v2/images/zsh-oh-my.png +0 -0
  498. data/spec/support/static/git-scm.com/book/en/v2/images/zsh-prompt.png +0 -0
  499. data/spec/support/static/git-scm.com/book/en/v2.html +0 -688
  500. data/spec/support/static/git-scm.com/favicon.ico +0 -0
  501. data/spec/support/static/git-scm.com/images/bg/body.jpg +0 -0
  502. data/spec/support/static/git-scm.com/images/bg/isometric-grid.png +0 -0
  503. data/spec/support/static/git-scm.com/images/bg/isometric-grid@2x.png +0 -0
  504. data/spec/support/static/git-scm.com/images/bg/search-header.jpg +0 -0
  505. data/spec/support/static/git-scm.com/images/company-project-logos/android.png +0 -0
  506. data/spec/support/static/git-scm.com/images/company-project-logos/android@2x.png +0 -0
  507. data/spec/support/static/git-scm.com/images/company-project-logos/eclipse.png +0 -0
  508. data/spec/support/static/git-scm.com/images/company-project-logos/eclipse@2x.png +0 -0
  509. data/spec/support/static/git-scm.com/images/company-project-logos/facebook.png +0 -0
  510. data/spec/support/static/git-scm.com/images/company-project-logos/facebook@2x.png +0 -0
  511. data/spec/support/static/git-scm.com/images/company-project-logos/gnome.png +0 -0
  512. data/spec/support/static/git-scm.com/images/company-project-logos/gnome@2x.png +0 -0
  513. data/spec/support/static/git-scm.com/images/company-project-logos/google.png +0 -0
  514. data/spec/support/static/git-scm.com/images/company-project-logos/google@2x.png +0 -0
  515. data/spec/support/static/git-scm.com/images/company-project-logos/kde.png +0 -0
  516. data/spec/support/static/git-scm.com/images/company-project-logos/kde@2x.png +0 -0
  517. data/spec/support/static/git-scm.com/images/company-project-logos/linked-in.png +0 -0
  518. data/spec/support/static/git-scm.com/images/company-project-logos/linked-in@2x.png +0 -0
  519. data/spec/support/static/git-scm.com/images/company-project-logos/linux.png +0 -0
  520. data/spec/support/static/git-scm.com/images/company-project-logos/linux@2x.png +0 -0
  521. data/spec/support/static/git-scm.com/images/company-project-logos/microsoft.png +0 -0
  522. data/spec/support/static/git-scm.com/images/company-project-logos/microsoft@2x.png +0 -0
  523. data/spec/support/static/git-scm.com/images/company-project-logos/netflix.png +0 -0
  524. data/spec/support/static/git-scm.com/images/company-project-logos/netflix@2x.png +0 -0
  525. data/spec/support/static/git-scm.com/images/company-project-logos/perl.png +0 -0
  526. data/spec/support/static/git-scm.com/images/company-project-logos/perl@2x.png +0 -0
  527. data/spec/support/static/git-scm.com/images/company-project-logos/postgresql.png +0 -0
  528. data/spec/support/static/git-scm.com/images/company-project-logos/postgresql@2x.png +0 -0
  529. data/spec/support/static/git-scm.com/images/company-project-logos/qt.png +0 -0
  530. data/spec/support/static/git-scm.com/images/company-project-logos/qt@2x.png +0 -0
  531. data/spec/support/static/git-scm.com/images/company-project-logos/rails.png +0 -0
  532. data/spec/support/static/git-scm.com/images/company-project-logos/rails@2x.png +0 -0
  533. data/spec/support/static/git-scm.com/images/company-project-logos/twitter.png +0 -0
  534. data/spec/support/static/git-scm.com/images/company-project-logos/twitter@2x.png +0 -0
  535. data/spec/support/static/git-scm.com/images/company-project-logos/x.png +0 -0
  536. data/spec/support/static/git-scm.com/images/company-project-logos/x@2x.png +0 -0
  537. data/spec/support/static/git-scm.com/images/epub.png +0 -0
  538. data/spec/support/static/git-scm.com/images/icons/admin-sm.png +0 -0
  539. data/spec/support/static/git-scm.com/images/icons/admin-sm@2x.png +0 -0
  540. data/spec/support/static/git-scm.com/images/icons/apple.png +0 -0
  541. data/spec/support/static/git-scm.com/images/icons/apple@2x.png +0 -0
  542. data/spec/support/static/git-scm.com/images/icons/book.png +0 -0
  543. data/spec/support/static/git-scm.com/images/icons/book@2x.png +0 -0
  544. data/spec/support/static/git-scm.com/images/icons/box.png +0 -0
  545. data/spec/support/static/git-scm.com/images/icons/box@2x.png +0 -0
  546. data/spec/support/static/git-scm.com/images/icons/branch-sm.png +0 -0
  547. data/spec/support/static/git-scm.com/images/icons/branch-sm@2x.png +0 -0
  548. data/spec/support/static/git-scm.com/images/icons/camera-sm.png +0 -0
  549. data/spec/support/static/git-scm.com/images/icons/camera-sm@2x.png +0 -0
  550. data/spec/support/static/git-scm.com/images/icons/chevron-up@2x.png +0 -0
  551. data/spec/support/static/git-scm.com/images/icons/code.png +0 -0
  552. data/spec/support/static/git-scm.com/images/icons/code@2x.png +0 -0
  553. data/spec/support/static/git-scm.com/images/icons/debugging-sm.png +0 -0
  554. data/spec/support/static/git-scm.com/images/icons/debugging-sm@2x.png +0 -0
  555. data/spec/support/static/git-scm.com/images/icons/document.png +0 -0
  556. data/spec/support/static/git-scm.com/images/icons/document@2x.png +0 -0
  557. data/spec/support/static/git-scm.com/images/icons/download.png +0 -0
  558. data/spec/support/static/git-scm.com/images/icons/email-sm.png +0 -0
  559. data/spec/support/static/git-scm.com/images/icons/email-sm@2x.png +0 -0
  560. data/spec/support/static/git-scm.com/images/icons/external-sm.png +0 -0
  561. data/spec/support/static/git-scm.com/images/icons/external-sm@2x.png +0 -0
  562. data/spec/support/static/git-scm.com/images/icons/gui.png +0 -0
  563. data/spec/support/static/git-scm.com/images/icons/gui@2x.png +0 -0
  564. data/spec/support/static/git-scm.com/images/icons/info.png +0 -0
  565. data/spec/support/static/git-scm.com/images/icons/info@2x.png +0 -0
  566. data/spec/support/static/git-scm.com/images/icons/inspection-sm.png +0 -0
  567. data/spec/support/static/git-scm.com/images/icons/inspection-sm@2x.png +0 -0
  568. data/spec/support/static/git-scm.com/images/icons/linux.png +0 -0
  569. data/spec/support/static/git-scm.com/images/icons/linux@2x.png +0 -0
  570. data/spec/support/static/git-scm.com/images/icons/nav-circles.png +0 -0
  571. data/spec/support/static/git-scm.com/images/icons/nav-circles@2x.png +0 -0
  572. data/spec/support/static/git-scm.com/images/icons/patching-sm.png +0 -0
  573. data/spec/support/static/git-scm.com/images/icons/patching-sm@2x.png +0 -0
  574. data/spec/support/static/git-scm.com/images/icons/plumbing-sm.png +0 -0
  575. data/spec/support/static/git-scm.com/images/icons/plumbing-sm@2x.png +0 -0
  576. data/spec/support/static/git-scm.com/images/icons/projects-sm.png +0 -0
  577. data/spec/support/static/git-scm.com/images/icons/projects-sm@2x.png +0 -0
  578. data/spec/support/static/git-scm.com/images/icons/search.png +0 -0
  579. data/spec/support/static/git-scm.com/images/icons/search@2x.png +0 -0
  580. data/spec/support/static/git-scm.com/images/icons/server-admin-sm.png +0 -0
  581. data/spec/support/static/git-scm.com/images/icons/server-admin-sm@2x.png +0 -0
  582. data/spec/support/static/git-scm.com/images/icons/setup-sm.png +0 -0
  583. data/spec/support/static/git-scm.com/images/icons/setup-sm@2x.png +0 -0
  584. data/spec/support/static/git-scm.com/images/icons/sharing-sm.png +0 -0
  585. data/spec/support/static/git-scm.com/images/icons/sharing-sm@2x.png +0 -0
  586. data/spec/support/static/git-scm.com/images/icons/sidebar.png +0 -0
  587. data/spec/support/static/git-scm.com/images/icons/sidebar@2x.png +0 -0
  588. data/spec/support/static/git-scm.com/images/icons/source-code.png +0 -0
  589. data/spec/support/static/git-scm.com/images/icons/source-code@2x.png +0 -0
  590. data/spec/support/static/git-scm.com/images/icons/windows.png +0 -0
  591. data/spec/support/static/git-scm.com/images/icons/windows@2x.png +0 -0
  592. data/spec/support/static/git-scm.com/images/logo@2x.png +0 -0
  593. data/spec/support/static/git-scm.com/images/mobi.png +0 -0
  594. data/spec/support/static/git-scm.com/images/monitor-default.png +0 -0
  595. data/spec/support/static/git-scm.com/images/monitor-default@2x.png +0 -0
  596. data/spec/support/static/git-scm.com/images/monitor-linux.png +0 -0
  597. data/spec/support/static/git-scm.com/images/monitor-linux@2x.png +0 -0
  598. data/spec/support/static/git-scm.com/images/monitor-mac.png +0 -0
  599. data/spec/support/static/git-scm.com/images/monitor-mac@2x.png +0 -0
  600. data/spec/support/static/git-scm.com/images/monitor-windows.png +0 -0
  601. data/spec/support/static/git-scm.com/images/monitor-windows@2x.png +0 -0
  602. data/spec/support/static/git-scm.com/images/pdf.png +0 -0
  603. data/spec/support/static/git-scm.com/images/progit2.png +0 -0
  604. data/spec/support/static/git-scm.com/images/sidebar-divider.png +0 -0
  605. data/spec/support/static/git-scm.com/images/sidebar-divider@2x.png +0 -0
  606. data/spec/support/static/git-scm.com/robots.txt +0 -0
  607. data/spec/support/static/graph/details/a.html +0 -10
  608. data/spec/support/static/graph/details/b.html +0 -10
  609. data/spec/support/static/graph/index.html +0 -20
  610. data/spec/support/static/links/links.html +0 -28
@@ -1 +0,0 @@
1
- /*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main #logo-license,#main .bottom-nav{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main #logo-license p,#main .bottom-nav p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #reference-version a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}p{margin:0 0 11px;font-size:14px;line-height:22px}p small{font-size:12px;color:#9a9994}a{color:#0388a6;text-decoration:none;transition-duration:0.3s;transition-property:color}h1,h2,h3,h4,h5,h6{margin:0;font-weight:normal;color:#4e443c;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;color:#9a9994}h1{margin-bottom:0.4em;font-size:36px;line-height:44px}h1 small{font-size:18px}h2{margin-top:20px;font-size:18px;font-weight:bold;line-height:44px;color:#f14e32}h2 small{font-size:18px}.callout h2:first-child,#book-container h2:first-child,.bottom-nav h2:first-child,#logo-license h2:first-child{margin-top:0}h3{line-height:33px;font-size:16px;font-weight:bold}h3 small{font-size:14px}h4,h5,h6{line-height:22px}h4{font-size:14px;font-weight:bold}h4 small{font-size:12px}aside h4{margin-bottom:1em;color:#9a9994;line-height:1.4}h5{font-size:12px}h6{font-size:11px;color:#9a9994;text-transform:uppercase}ul,ol{padding:0;margin:0 0 11px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}ul{list-style:disc}ol{list-style:decimal}li{line-height:22px}ul.unstyled,ul.stackoverflow,ul.content-list,ul.books-list,ul.video-thumbnails,ul.gui-thumbnails,#companies-projects ul,#front-nav ul,#search-results table ul,ul#download-next-steps,ul.section-nav-container,ul#book-chapters,ul#reference-version,ol.unstyled,ol#about-nav,ol.content-list,ol.book-toc,ol.reference-previous-versions,ol.full-search-results,ol#download-next-steps,ol.section-nav-container,ol#book-chapters,ol#reference-version{margin-left:0;list-style:none}ul.bullets li{padding-bottom:10px}dl{margin-bottom:22px}dt,dd{line-height:22px}dt{font-weight:bold;line-height:21px}dd{margin-left:11px}.dl-horizontal dt{float:left;width:120px;clear:left;text-align:right}.dl-horizontal dd{margin-left:130px}hr{margin:22px 0;border:0;border-top:1px solid #d8d7cf}strong{font-weight:bold}em{font-style:italic}.muted{color:#9a9994}abbr[title]{border-bottom:1px dotted #ddd;cursor:help}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 22px;border-left:5px solid #d8d7cf}blockquote p{margin-bottom:0}blockquote small{display:block;line-height:22px;color:#9a9994}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #d8d7cf;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}code,#documentation #main p tt{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;display:block;padding:10px 15px 13px;margin-bottom:1em;overflow:auto;font-family:Courier, monospace;line-height:18px;color:#f14e32;background-color:#fff;border:solid 1px #efeee6}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:22px;font-style:normal;line-height:22px}table th{font-weight:bold}table.data{margin-bottom:24px}table.data th,table.data td{padding:2px 0;border-bottom:solid 1px #efeeeb}table td.sweet{font-weight:bold;color:#25b028}table td.compare{font-weight:bold;color:#f14e32}.light{color:#9a9994}small{font-size:100%}cite{font-style:normal}a.subtle-button{display:inline-block;padding:3px 20px;font-size:12px;text-align:center;background-image:linear-gradient(#f1f1e9, #eae9e1);border-top:solid 1px #dedcd4;border-right:solid 1px #dedcd4;border-bottom:solid 1px #cdcbc4;border-left:solid 1px #dedcd4;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 #f1f1e9;-moz-box-shadow:0 1px 0 #f1f1e9;box-shadow:0 1px 0 #f1f1e9;transition-duration:0.3s;transition-property:background-image}a.subtle-button:hover{color:#0388a6;background-image:linear-gradient(#edede3, #e6e5db)}a.subtle-button.selected{background-image:linear-gradient(#d7d7c1, #cbc9b4)}a#gui-os-filter{display:none;margin-top:15px}a#gui-os-filter.visible{display:inline-block}div.more{display:none}.highlight{background-color:#eee0b5;padding:2px}.fixed{font-family:Courier, monospace}.text-center{text-align:center}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main .bottom-nav,#main #logo-license{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main .bottom-nav p,#main #logo-license p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #reference-version a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}#more-downloads.callout .column-left{width:47%}#more-downloads.callout .column-right{width:45%}#more-downloads.callout p{padding-bottom:1em;line-height:1.4}#download-next-steps{padding-top:24px}#download-next-steps:before{display:table;content:""}#download-next-steps:after{display:table;clear:both;content:""}#download-next-steps li{display:block;float:left;width:200px;margin-bottom:20px}#download-next-steps li+li{margin-left:20px}#download-next-steps a{display:block;color:#4e443c;text-align:center;background-repeat:no-repeat;background-position:0 0;transition-duration:0.3s;transition-property:color}#download-next-steps a img{display:block;margin:0 auto 10px;opacity:0.9;transition-duration:0.3s;transition-property:opacity;image-rendering:-webkit-optimize-contrast}#download-next-steps a h3{font-size:18px;font-weight:bold;color:#f14e32}#download-next-steps a p{font-size:13px;line-height:17.6px}#download-next-steps a:hover img{opacity:1}#download-next-steps a:hover h3{color:#ef391a}#os-filter-count{position:relative;top:8px;left:12px;display:none;color:#f14e32}.downloading .hide{display:none}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main .bottom-nav,#main #logo-license{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main .bottom-nav p,#main #logo-license p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #reference-version a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column #download-next-steps a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}#search-results{position:absolute;top:2px;right:-8px;z-index:900;display:none;width:384px;background:#398a94 url("../images/bg/search-header.jpg") 0 1px repeat-x;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px rgba(0,0,0,0.25);-moz-box-shadow:0 0 7px rgba(0,0,0,0.25);box-shadow:0 0 7px rgba(0,0,0,0.25);border-bottom:solid 1px #d8d7cf}#search-results header{height:44px;padding:0;margin:0;text-indent:-9999px;border:solid 1px #366769;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px}#search-results table{width:100%;line-height:1;background-color:#fff;-webkit-border-bottom-right-radius:3px;-moz-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-bottom-left-radius:3px;border-bottom-left-radius:3px}#search-results table td{border-top:solid 1px #cfddde}#search-results table td.category{width:67px;padding:10px 12px 0 0;font-size:11px;color:#009099;text-align:right;vertical-align:top;background-color:#f5fbfb;border-right:solid 1px #cfddde;opacity:0.75}#search-results table td.matches{padding:0 !important;font-size:12px;font-weight:bold}#search-results table td.matches a{display:block;padding:5px 12px;margin-bottom:0;color:#4e443c;transition-duration:0s}#search-results table td.matches a:hover,#search-results table td.matches a.highlight{color:#fff;text-shadow:0 1px 0 rgba(0,0,0,0.25);background:#55bec4;background-image:linear-gradient(#55bec4, #54b2b7)}#search-results table td.matches a:hover span,#search-results table td.matches a.highlight span{color:#fff}#search-results table ul{margin-bottom:0}#search-results table tr.show-all td{border-top:none}ol.full-search-results li{margin-bottom:2em}ol.full-search-results li:last-child{margin-bottom:0}ol.full-search-results h3{line-height:1.4;padding-bottom:0;margin-bottom:0}ol.full-search-results span.relevancy{float:right;padding-left:5px;margin-left:30px}ol.full-search-results span.relevancy img{position:relative;top:-2px}ol.full-search-results a.url{display:block;margin-bottom:0.4em;font-size:12px;color:#9a9994}ol.full-search-results a.url:hover{color:#5a5955}.callout.top-matches,#book-container.top-matches,.top-matches.bottom-nav,#logo-license.top-matches{padding-top:1em !important;margin-bottom:2em !important}@media (max-width: 940px){#search-results{transform:translateX(-50%);left:50%;top:unset;width:98%}}@media (max-width: 640px){#search-results{margin-top:4px}}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main .bottom-nav,#main #logo-license{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main .bottom-nav p,#main #logo-license p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #reference-version a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}#front-content{overflow:visible}#front-content:before{display:table;content:""}#front-content:after{display:table;clear:both;content:""}#front-content #front-navigation{float:left;width:618px;margin-bottom:24px;border-right:solid 1px #d8d7cf}#front-nav:before{display:table;content:""}#front-nav:after{display:table;clear:both;content:""}#front-nav ul{padding-top:24px}#front-nav ul li{display:block;float:left;width:280px;margin-bottom:20px}#front-nav ul li#nav-about,#front-nav ul li#nav-downloads{margin-right:30px}#front-nav ul li#nav-about,#front-nav ul li#nav-documentation{margin-bottom:40px}#front-nav a{display:block;height:86px;padding-left:90px;color:#4e443c;background-repeat:no-repeat;background-position:0 0;transition-duration:0.3s;transition-property:color}#front-nav a img{float:left;margin-right:-90px;margin-left:-90px;opacity:0.9;transition-duration:0.3s;transition-property:opacity}#front-nav a h3{font-size:18px;font-weight:bold;color:#f14e32}#front-nav a p{font-size:13px;line-height:17.6px}#front-nav a:hover img{opacity:1}#front-nav a:hover h3{color:#ef391a}#front-book{float:left;width:590px;padding-top:20px;border-top:solid 1px #d8d7cf}#front-book img{float:left;margin-right:20px}#front-book p{margin-top:16px}#front-downloads{float:right;width:313px;position:relative}#front-downloads .monitor{position:absolute;top:0;right:-12px}#front-downloads table{position:absolute;top:271px;left:24px}#front-downloads table td{padding:8px 20px 6px 0;min-width:145px}#front-downloads table a{font-weight:bold}.monitor{background:transparent url("../images/monitor-default.png") top right no-repeat;background-size:313px 271px;width:273px;height:226px;padding-top:45px;padding-left:40px;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,0.2)}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){.monitor{background:transparent url("../images/monitor-default@2x.png") top right no-repeat;background-size:313px 271px}}.monitor h4{font-weight:normal;color:#fff;font-size:16px}.monitor span.version{display:block;margin-bottom:6px;font-size:28px;font-weight:bold}.monitor a{color:#eee;font-size:12px;text-decoration:underline}.monitor span.release-date{font-size:12px}.monitor a.button{-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 1px 0 #148a92;-moz-box-shadow:0 1px 0 #148a92;box-shadow:0 1px 0 #148a92;display:block;width:224px;padding:5px 0;margin-top:10px;font-size:16px;color:#fff;text-align:center;background-image:linear-gradient(#1c868c, #186368);border-top:solid 1px #085e64;border-right:solid 1px #1f6367;border-bottom:solid 1px #134143;border-left:solid 1px #1f6367;transition-duration:0.3s;transition-property:background-image;text-decoration:none}.monitor a.button:hover{background-image:linear-gradient(#1a7e84, #165b60)}.monitor.mac{background:transparent url("../images/monitor-mac.png") top right no-repeat;background-size:313px 271px;width:273px;height:235px;padding-top:36px;padding-left:40px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){.monitor.mac{background:transparent url("../images/monitor-mac@2x.png") top right no-repeat;background-size:313px 271px}}.monitor.windows{background:transparent url("../images/monitor-windows.png") top right no-repeat;background-size:313px 271px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){.monitor.windows{background:transparent url("../images/monitor-windows@2x.png") top right no-repeat;background-size:313px 271px}}.monitor.linux{background:transparent url("../images/monitor-linux.png") top right no-repeat;background-size:313px 271px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){.monitor.linux{background:transparent url("../images/monitor-linux@2x.png") top right no-repeat;background-size:313px 271px}}#companies-projects{padding-top:20px;clear:both;border-top:solid 1px #d8d7cf}#companies-projects ul li{display:block;float:left;width:108px;height:65px;margin:0 4px 25px 5px}#companies-projects ul a{display:block;width:108px;height:65px;text-indent:-9999px;background-repeat:no-repeat;background-position:0 0;opacity:0.85;transition-duration:0.3s;transition-property:opacity}#companies-projects ul a:hover{opacity:1}#companies-projects ul a.facebook{background-image:url("../images/company-project-logos/facebook.png")}#companies-projects ul a.google{background:transparent url("../images/company-project-logos/google.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.google{background:transparent url("../images/company-project-logos/google@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.twitter{background:transparent url("../images/company-project-logos/twitter.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.twitter{background:transparent url("../images/company-project-logos/twitter@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.microsoft{background:transparent url("../images/company-project-logos/microsoft.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.microsoft{background:transparent url("../images/company-project-logos/microsoft@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.netflix{background:transparent url("../images/company-project-logos/netflix.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.netflix{background:transparent url("../images/company-project-logos/netflix@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.linked-in{background:transparent url("../images/company-project-logos/linked-in.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.linked-in{background:transparent url("../images/company-project-logos/linked-in@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.linux{background:transparent url("../images/company-project-logos/linux.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.linux{background:transparent url("../images/company-project-logos/linux@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.perl{background:transparent url("../images/company-project-logos/perl.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.perl{background:transparent url("../images/company-project-logos/perl@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.postgresql{background:transparent url("../images/company-project-logos/postgresql.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.postgresql{background:transparent url("../images/company-project-logos/postgresql@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.facebook{background:transparent url("../images/company-project-logos/facebook.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.facebook{background:transparent url("../images/company-project-logos/facebook@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.android{background:transparent url("../images/company-project-logos/android.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.android{background:transparent url("../images/company-project-logos/android@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.rails{background:transparent url("../images/company-project-logos/rails.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.rails{background:transparent url("../images/company-project-logos/rails@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.qt{background:transparent url("../images/company-project-logos/qt.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.qt{background:transparent url("../images/company-project-logos/qt@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.gnome{background:transparent url("../images/company-project-logos/gnome.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.gnome{background:transparent url("../images/company-project-logos/gnome@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.eclipse{background:transparent url("../images/company-project-logos/eclipse.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.eclipse{background:transparent url("../images/company-project-logos/eclipse@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.kde{background:transparent url("../images/company-project-logos/kde.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.kde{background:transparent url("../images/company-project-logos/kde@2x.png") top right no-repeat;background-size:108px 65px}}#companies-projects ul a.x{background:transparent url("../images/company-project-logos/x.png") top right no-repeat;background-size:108px 65px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#companies-projects ul a.x{background:transparent url("../images/company-project-logos/x@2x.png") top right no-repeat;background-size:108px 65px}}a.icon{display:inline-block;height:30px;padding-left:30px;line-height:36px}a.icon.gui{background:transparent url("../images/icons/gui.png") 6px 3px no-repeat;background-size:18px 24px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){a.icon.gui{background:transparent url("../images/icons/gui@2x.png") 6px 3px no-repeat;background-size:18px 24px}}a.icon.older-releases{background:transparent url("../images/icons/box.png") 0 6px no-repeat;background-size:22px 20px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){a.icon.older-releases{background:transparent url("../images/icons/box@2x.png") 0 6px no-repeat;background-size:22px 20px}}a.icon.windows{background:transparent url("../images/icons/windows.png") 0 6px no-repeat;background-size:24px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){a.icon.windows{background:transparent url("../images/icons/windows@2x.png") 0 6px no-repeat;background-size:24px 21px}}a.icon.mac{background:transparent url("../images/icons/apple.png") 5px 4px no-repeat;background-size:17px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){a.icon.mac{background:transparent url("../images/icons/apple@2x.png") 5px 4px no-repeat;background-size:17px 21px}}a.icon.linux{background:transparent url("../images/icons/linux.png") 6px 6px no-repeat;background-size:17px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){a.icon.linux{background:transparent url("../images/icons/linux@2x.png") 6px 6px no-repeat;background-size:17px 21px}}a.icon.source{background:transparent url("../images/icons/source-code.png") 0 6px no-repeat;background-size:25px 20px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){a.icon.source{background:transparent url("../images/icons/source-code@2x.png") 0 6px no-repeat;background-size:25px 20px}}@media (max-width: 940px){#front-content{display:flex}#front-content #front-navigation{width:50%}#front-content #front-navigation #front-nav ul{padding:0 1rem 0 0}#front-content #front-navigation #front-nav ul li{margin-bottom:1rem !important;margin-right:0 !important}#front-content #front-navigation #front-book{width:unset}#front-content #front-downloads{width:50%}#front-content #front-downloads .monitor{transform:translateX(-50%);left:50%}#front-content #front-downloads table{transform:translateX(-50%);left:50%}#front-content #front-downloads table tbody,#front-content #front-downloads table tr{display:flex;flex-direction:column}#front-content #front-downloads table td{margin-bottom:1rem}#front-content #front-downloads table td a{padding-left:2.3rem}#companies-projects ul{display:flex;flex-wrap:wrap;justify-content:center}#companies-projects li{margin:0.7rem 0.4rem}}@media (max-width: 640px){#front-content{flex-direction:column-reverse}#front-content #front-navigation,#front-content #front-downloads{width:100%;border-right:none}#front-content #front-navigation #front-nav ul{padding:0 1rem}#front-content #front-navigation #front-book{display:flex;justify-content:center;align-items:center}#front-content #front-downloads{border-bottom:1px solid #d8d7cf;margin-bottom:2rem;padding-bottom:1rem}#front-content #front-downloads .monitor,#front-content #front-downloads table{position:relative}#front-content #front-downloads table{top:0}}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main .bottom-nav,#main #logo-license{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main .bottom-nav p,#main #logo-license p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #reference-version a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}hr.sidebar{width:218px;height:12px;margin-bottom:2em;border:0 !important;background:transparent url("../images/sidebar-divider.png") top right no-repeat;background-size:218px 12px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){hr.sidebar{background:transparent url("../images/sidebar-divider@2x.png") top right no-repeat;background-size:218px 12px}}aside.sidebar{font-size:13px !important;line-height:16.5px}aside.sidebar p{font-size:13px !important;line-height:16.5px}aside.sidebar .callout,aside.sidebar #book-container,aside.sidebar .bottom-nav,aside.sidebar #logo-license{padding:20px;color:#887668;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px}aside.sidebar .callout p,aside.sidebar #book-container p,aside.sidebar .bottom-nav p,aside.sidebar #logo-license p{margin-bottom:0}aside.sidebar.active{background-color:#efefe7;z-index:305;left:0;box-shadow:6px 2px 8px 0px rgba(28,28,28,0.1);border:thin solid #ddd;border-radius:0 5px 5px 0;transform:translateX(0%)}.sidebar-btn{display:none}@media (max-width: 940px){.sidebar-btn{background:transparent url("../images/icons/sidebar.png") left center no-repeat;background-size:24px 24px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-bottom-right-radius:5px;border-bottom-right-radius:5px;background-color:#333333 !important;display:block;position:fixed;padding:2rem 0.4rem;z-index:1;border:none;left:0;width:1.6rem}}@media only screen and (max-width: 940px) and (-webkit-min-device-pixel-ratio: 2),only screen and (max-width: 940px) and (min--moz-device-pixel-ratio: 2),only screen and (max-width: 940px) and (-o-min-device-pixel-ratio: 2/1){.sidebar-btn{background:transparent url("../images/icons/sidebar@2x.png") left center no-repeat;background-size:24px 24px}}@media (max-width: 940px){.sidebar-btn:focus+.sidebar{background-color:#efefe7;z-index:305;left:0;box-shadow:6px 2px 8px 0px rgba(28,28,28,0.1);border:thin solid #ddd;border-radius:0 5px 5px 0;transform:translateX(0%)}aside.sidebar{position:fixed;top:1em;transform:translateX(-105.5%);transition:transform 0.3s, background-color 0.3s;padding:20px;height:90vh;overflow-y:scroll;z-index:1001 !important}}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main .bottom-nav,#main #logo-license{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main .bottom-nav p,#main #logo-license p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #reference-version a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}.topics h3,.topics ul li{padding-left:23px}h3.setup{background:transparent url("../images/icons/setup-sm.png") 0 50% no-repeat;background-size:17px 17px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.setup{background:transparent url("../images/icons/setup-sm@2x.png") 0 50% no-repeat;background-size:17px 17px}}h3.projects{background:transparent url("../images/icons/projects-sm.png") 0 50% no-repeat;background-size:17px 13px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.projects{background:transparent url("../images/icons/projects-sm@2x.png") 0 50% no-repeat;background-size:17px 13px}}h3.snapshotting{background:transparent url("../images/icons/camera-sm.png") 0 50% no-repeat;background-size:17px 12px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.snapshotting{background:transparent url("../images/icons/camera-sm@2x.png") 0 50% no-repeat;background-size:17px 12px}}h3.branching{background:transparent url("../images/icons/branch-sm.png") 4px 50% no-repeat;background-size:12px 15px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.branching{background:transparent url("../images/icons/branch-sm@2x.png") 4px 50% no-repeat;background-size:12px 15px}}h3.sharing{background:transparent url("../images/icons/sharing-sm.png") 2px 50% no-repeat;background-size:14px 14px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.sharing{background:transparent url("../images/icons/sharing-sm@2x.png") 2px 50% no-repeat;background-size:14px 14px}}h3.inspection{background:transparent url("../images/icons/inspection-sm.png") 1px 50% no-repeat;background-size:14px 14px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.inspection{background:transparent url("../images/icons/inspection-sm@2x.png") 1px 50% no-repeat;background-size:14px 14px}}h3.patching{background:transparent url("../images/icons/patching-sm.png") 1px 50% no-repeat;background-size:18px 11px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.patching{background:transparent url("../images/icons/patching-sm@2x.png") 1px 50% no-repeat;background-size:18px 11px}}h3.debugging{background:transparent url("../images/icons/debugging-sm.png") 1px 50% no-repeat;background-size:17px 16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.debugging{background:transparent url("../images/icons/debugging-sm@2x.png") 1px 50% no-repeat;background-size:17px 16px}}h3.email{background:transparent url("../images/icons/email-sm.png") 1px 50% no-repeat;background-size:17px 12px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.email{background:transparent url("../images/icons/email-sm@2x.png") 1px 50% no-repeat;background-size:17px 12px}}h3.external{background:transparent url("../images/icons/external-sm.png") 0 50% no-repeat;background-size:17px 15px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.external{background:transparent url("../images/icons/external-sm@2x.png") 0 50% no-repeat;background-size:17px 15px}}h3.admin{background:transparent url("../images/icons/admin-sm.png") 2px 50% no-repeat;background-size:16px 16px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.admin{background:transparent url("../images/icons/admin-sm@2x.png") 2px 50% no-repeat;background-size:16px 16px}}h3.server-admin{background:transparent url("../images/icons/server-admin-sm.png") 2px 50% no-repeat;background-size:15px 15px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.server-admin{background:transparent url("../images/icons/server-admin-sm@2x.png") 2px 50% no-repeat;background-size:15px 15px}}h3.plumbing{background:transparent url("../images/icons/plumbing-sm.png") 2px 50% no-repeat;background-size:17px 14px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){h3.plumbing{background:transparent url("../images/icons/plumbing-sm@2x.png") 2px 50% no-repeat;background-size:17px 14px}}#content h1>a.anchor,#content h2>a.anchor,#content h3>a.anchor,#content h4>a.anchor,#content dt.hdlist1>a.anchor{position:absolute;display:block;width:1.01em;padding-left:0.5em;margin-left:-1.5em;font-weight:lighter;text-align:center;visibility:hidden}#content h1>a.anchor:before,#content h2>a.anchor:before,#content h3>a.anchor:before,#content h4>a.anchor:before,#content dt.hdlist1>a.anchor:before{display:block;font-size:0.9em;content:"\00A7"}#content h1:hover>a.anchor,#content h2:hover>a.anchor,#content h3:hover>a.anchor,#content h4:hover>a.anchor,#content dt.hdlist1:hover>a.anchor{visibility:visible}#reference-version a{top:-5px}#reference-version a#reference-versions-trigger{float:left;margin-right:6px}#reference-version a#reference-topics-trigger{float:right}#reference-version a#reference-languages-trigger{float:right}#previous-versions-dropdown{width:330px;padding-top:6px}#previous-versions-dropdown header{padding:0 12px;margin:0;font-size:12px;font-weight:normal}#previous-versions-dropdown footer{padding:4px 12px;margin-top:0;font-size:11px;font-weight:normal;color:#4e443c;background-color:#eae9e0;-webkit-border-bottom-left-radius:3px;-moz-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-bottom-right-radius:3px;border-bottom-right-radius:3px}#previous-versions-dropdown footer p{all:unset;display:block;color:#9a9994}.windows.chrome #previous-versions-dropdown,.windows.ie8 #previous-versions-dropdown{width:370px}#l10n-versions-dropdown{width:250px;right:12px;padding:12px;font-weight:normal;line-height:1}#l10n-versions-dropdown header{padding:0 12px;margin:0;font-size:12px;font-weight:normal}#l10n-versions-dropdown footer{padding:4px 12px;margin-top:0;font-size:11px;font-weight:normal}#l10n-versions-dropdown footer a{padding:4px;margin-top:0;color:blue}#topics-dropdown{width:650px;right:12px;padding:12px;font-weight:normal;line-height:1}#topics-dropdown ul{margin-bottom:10px}#topics-dropdown ul:last-child{margin-bottom:0}#topics-dropdown li{padding-left:23px;line-height:17.6px}#topics-dropdown h3{min-height:20px;padding-top:4px;padding-left:23px;margin-bottom:8px;font-size:13px;line-height:15px}#topics-dropdown a{font-weight:normal;padding:0}#topics-dropdown a.active{font-weight:bold}ol.reference-previous-versions{margin-top:3px;margin-bottom:0;border-top:dotted 1px #e3e3e1}ol.reference-previous-versions li a{top:0 !important;display:block;padding:2px 12px;border-bottom:dotted 1px #e3e3e1}ol.reference-previous-versions li a:before{display:table;content:""}ol.reference-previous-versions li a:after{display:table;clear:both;content:""}ol.reference-previous-versions li a:hover{background-color:#edf7f8}ol.reference-previous-versions li a.more{font-size:11px}ol.reference-previous-versions li a span.version{float:left;min-width:40px}ol.reference-previous-versions li a span.diff{padding-right:16px;padding-left:12px}ol.reference-previous-versions li a span.diff img{display:inline-block;margin-right:-1px}ol.reference-previous-versions li a em.date{float:right;margin-right:150px;font-size:11px;font-style:normal;font-weight:normal;color:#9a9994}ol.reference-previous-versions li a.more{border-bottom:0}ol.reference-previous-versions li.no-change{position:absolute;right:0;z-index:10;width:auto;padding:0;margin-top:-6px;font-size:11px;font-weight:normal;line-height:1.2;color:#9a9994;text-align:center}ol.reference-previous-versions li.no-change:before{display:table;content:""}ol.reference-previous-versions li.no-change:after{display:table;clear:both;content:""}ol.reference-previous-versions li.no-change span{float:left;padding:0 5px;-webkit-border-top-left-radius:10px;-moz-border-top-left-radius:10px;border-top-left-radius:10px;-webkit-border-bottom-left-radius:10px;-moz-border-bottom-left-radius:10px;border-bottom-left-radius:10px;font-size:10px;font-style:italic;background-color:#f5f5f3}.callout.quickref,#book-container.quickref,.quickref.bottom-nav,#logo-license.quickref{background:transparent url("../images/icons/document.png") 14px 7px no-repeat;background-size:15px 21px;padding-left:36px !important}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){.callout.quickref,#book-container.quickref,.quickref.bottom-nav,#logo-license.quickref{background:transparent url("../images/icons/document@2x.png") 14px 7px no-repeat;background-size:15px 21px}}.callout.quickref a,#book-container.quickref a,.quickref.bottom-nav a,#logo-license.quickref a{font-weight:bold}.callout.all-commands,#book-container.all-commands,.all-commands.bottom-nav,#logo-license.all-commands{background:transparent url("../images/icons/book.png") 14px 7px no-repeat;background-size:15px 21px;padding-left:36px !important}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){.callout.all-commands,#book-container.all-commands,.all-commands.bottom-nav,#logo-license.all-commands{background:transparent url("../images/icons/book@2x.png") 14px 7px no-repeat;background-size:15px 21px}}.callout.all-commands a,#book-container.all-commands a,.all-commands.bottom-nav a,#logo-license.all-commands a{font-weight:bold}.callout.ref-manual,#book-container.ref-manual,.ref-manual.bottom-nav,#logo-license.ref-manual{background:transparent url("../images/icons/book.png") 24px 20px no-repeat;background-size:54px 72px;padding:20px 30px 20px 100px !important;background-color:#e9e8e0}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){.callout.ref-manual,#book-container.ref-manual,.ref-manual.bottom-nav,#logo-license.ref-manual{background:transparent url("../images/icons/book@2x.png") 24px 20px no-repeat;background-size:54px 72px}}.callout.ref-manual iframe,#book-container.ref-manual iframe,.ref-manual.bottom-nav iframe,#logo-license.ref-manual iframe{max-width:100%}.callout.ref-manual h3,#book-container.ref-manual h3,.ref-manual.bottom-nav h3,#logo-license.ref-manual h3{font-size:18px}.callout.ref-manual p,#book-container.ref-manual p,.ref-manual.bottom-nav p,#logo-license.ref-manual p{font-size:15px;line-height:1.3em}p.quickref{background:transparent url("../images/icons/document.png") 0 0 no-repeat;background-size:15px 21px;padding-left:22px !important;margin-top:-0.4em;margin-bottom:1em}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){p.quickref{background:transparent url("../images/icons/document@2x.png") 0 0 no-repeat;background-size:15px 21px}}p.quickref a{font-weight:bold}.reference-menu h3{padding-left:26px}.reference-menu ul{padding-left:28px}#video-container{padding:10px 10px 2px;margin-bottom:20px;background-color:#e9e8e0}code.command,#documentation #main p tt.command{user-select:all}code.command::before,#documentation #main p tt.command::before{content:'$ ';font-weight:bold}@media (max-width: 940px){#video-container iframe{width:100%}}@media (max-width: 640px){#video-container iframe{height:auto}}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main .bottom-nav,#main #logo-license{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main .bottom-nav p,#main #logo-license p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #reference-version a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}\::-webkit-input-placeholder{color:#9a9994 !important}input:-moz-placeholder{color:#9a9994 !important}input.inactive{color:#9a9994 !important}input.active{color:#4e443c !important}input,textarea{font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;outline:none}.windows.chrome input,.windows.chrome textarea,.windows.ie8 input,.windows.chrome textarea{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}form#search{position:absolute;top:10px;right:0;z-index:1000;width:262px;padding-left:32px;background:transparent url("../images/icons/search.png") 10px 50% no-repeat;background-size:17px 17px;background-color:#fcfcfa !important;border:solid 1px #ceccc5;-webkit-border-radius:20px;-moz-border-radius:20px;-ms-border-radius:20px;border-radius:20px;-webkit-box-shadow:inset 0 1px 4px #ddd;-moz-box-shadow:inset 0 1px 4px #ddd;box-shadow:inset 0 1px 4px #ddd}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){form#search{background:transparent url("../images/icons/search@2x.png") 10px 50% no-repeat;background-size:17px 17px}}form#search input{-webkit-border-radius:20px;-moz-border-radius:20px;-ms-border-radius:20px;border-radius:20px;width:100%;height:20px;margin-top:4px;margin-bottom:2px;line-height:1em;color:#4e443c;background-color:transparent;border:0}form#search.focus{border-color:#007175;background-color:#fff}@media (max-width: 940px){form#search{transform:translateX(-50%);left:50%;margin-top:7px;top:unset;width:92%}}@media (max-width: 640px){form#search{width:84%}form#search #search-text{padding:0.3rem 0.1rem}}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main .bottom-nav,#main #logo-license{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main .bottom-nav p,#main #logo-license p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #reference-version a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}#documentation #main p em{font-family:Courier, monospace !important;font-style:normal;font-weight:bold;color:#4e443c}#documentation #main p tt{display:inline;padding:1px}#documentation #main p.nutshell{padding:1em;background-color:#e8e7dd}#documentation #main .literalblock{margin-bottom:15px}#documentation #main .literalblock .content pre tt{display:block;padding:2px;font-family:Courier, monospace !important;background-color:#eee0b5}#documentation #main dt.hdlist1{font-family:Courier, monospace !important}#documentation #main div.verseblock pre.content{padding:1em;margin-bottom:1em;font-family:Courier, monospace !important;line-height:18px;color:#4e443c;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#e8e7dd}#documentation #main div.verseblock pre.content em{font-weight:bold;font-style:normal}#documentation #main .quoteblock{padding-left:1em;margin-left:1em;border-left:5px solid #d8d7cf}#documentation #main .quoteblock .content .paragraph p{color:#9a9994}#documentation #main .admonitionblock table{margin-bottom:1em}#documentation #main .admonitionblock table td{padding:0 1em}#documentation #main .admonitionblock table td .title{font-weight:bold;color:#f14e32}#documentation #main .admonitionblock table td:first-child{border-right:solid 2px #d8d7cf}#documentation #main #footer{color:#9a9994}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main #book-container,#main .bottom-nav,#main #logo-license{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main #book-container p,#main .bottom-nav p,#main #logo-license p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,#book-container.downloading,.downloading.bottom-nav,#logo-license.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,#book-container.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,#book-container.downloading p,.downloading.bottom-nav p,#logo-license.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,#book-container.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#book-chapters,#reference-version{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#book-chapters .light,#reference-version .light{font-weight:normal}.section-nav-container a,#book-chapters a,#reference-version a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#book-chapters .dropdown-panel,#reference-version .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #book-chapters a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #reference-version a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}.ebooks img{padding:5px}#book-container{position:relative;padding-top:20px !important;padding-bottom:20px !important;background-color:transparent !important;overflow:hidden;border:solid 1px #efeeeb}#book-intro{position:absolute;top:40px;left:50px;width:200px;font-size:13px;text-align:center}#book-intro p{padding-bottom:20px}#book-intro img.creative-commons{display:block;margin:10px auto}#book-intro .license{font-size:11px;line-height:1.3;color:#9a9994}#book-intro a#open-book{display:block;margin-top:10px;margin-bottom:10px;font-weight:bold}#about-book{background:transparent url("../images/icons/info.png") 40px 1px no-repeat;background-size:18px 17px;display:none;padding-left:22px;font-size:12px;color:#9a9994;text-align:center;text-indent:40px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#about-book{background:transparent url("../images/icons/info@2x.png") 40px 1px no-repeat;background-size:18px 17px}}#about-book.visible{display:inline-block}ol.book-toc{margin:30px 36px}ol.book-toc li.chapter{margin-bottom:0.6em}ol.book-toc ol{list-style:none}ol.book-toc h2{color:#4e443c}ol.book-toc a{padding-left:4px}.book code,.book #documentation #main p tt,#documentation #main p .book tt{display:inline;padding:1px}.book pre code,.book pre #documentation #main p tt,#documentation #main p .book pre tt{display:block;overflow:auto}.book table.ref{width:100%;margin-bottom:10px}.book table.ref tr{border:1px solid;border-color:#777}.book table.ref th,td{padding:5px}.book table.ref th:nth-child(1),td:nth-child(1){width:25%;padding:5px}#book-chapters #chapters-dropdown{top:30px;padding:12px}#book-chapters ol{margin:0}#book-chapters ol li{line-height:17.6px}#book-chapters ol li h2{margin:14px 0;font-size:14px;line-height:normal}#book-chapters ol li ol{margin-left:0}#book-chapters ol li ol a{font-weight:normal}#book-chapters ol li ol a.active{font-weight:bold;color:#f14e32}.switch a{color:#aaa}.book-wrapper{float:right;margin:-20px 40px 0 40px}@media (min-width: 640px){.book-toc{width:60%}.book-wrapper{position:sticky;top:2rem}}@media (max-width: 480px){.book-wrapper{margin-right:0}}.edition2 *{box-sizing:border-box}.edition2 body{padding-top:80px;margin:0 auto;max-width:700px}.edition2 p,.edition2 dd{font-family:sans-serif;font-size:14px;line-height:22px;text-indent:0}.edition2 section[data-type="preface"]>h1+p,.edition2 div[data-type="part"]>h1+p,.edition2 section[data-type="chapter"]>h1+p,.edition2 section[data-type="chapter"]>h1+div.author p,.edition2 section[data-type="sect1"]>h1+p,.edition2 section[data-type="sect2"]>h2+p,.edition2 section[data-type="sect3"]>h3+p{text-indent:0px}.edition2 p a{display:inline}.edition2 section[data-type="titlepage"] h1{font-family:serif}.edition2 section[data-type="titlepage"] h2,.edition2 section[data-type="copyright-page"] h1{font-family:sans-serif}.edition2 section[data-type="halftitlepage"]{display:none}.edition2 section[data-type="titlepage"]{text-align:left;page-break-after:always}.edition2 section[data-type="titlepage"] h1{padding-bottom:10px;margin-top:100px;border-bottom:1px solid #333}.edition2 section[data-type="titlepage"] h1{font-size:2em;line-height:120%}.edition2 section[data-type="titlepage"] h2{margin-top:20px;font-size:1.2em;line-height:120%}.edition2 section[data-type="titlepage"] p:first-of-type{margin-top:82pt}.edition2 section[data-type="titlepage"] p{float:none;margin-top:0;margin-bottom:0;font-family:sans-serif;font-size:13pt;line-height:16pt;text-indent:0}.edition2 section[data-type="copyright-page"]{margin-top:100px;page-break-after:always}.edition2 section[data-type="copyright-page"] h1{font-size:0.8em}.edition2 section[data-type="copyright-page"] p{margin:0;font-family:sans-serif;font-size:0.8em;text-indent:0}.edition2 section[data-type="dedication"]{padding-top:100px;font-family:serif;font-style:italic;page-break-after:always;text-align:center}.edition2 nav[data-type="toc"] a{font-style:normal}.edition2 nav[data-type="toc"] li{list-style-type:none}.edition2 nav[data-type="toc"]>h1{margin-top:80px;margin-bottom:50px;font-size:1.5em;line-height:120%;text-align:center}.edition2 nav[data-type="toc"] a{text-decoration:none}.edition2 nav[data-type="toc"] li{font-family:sans-serif}.edition2 nav[data-type="toc"] li[data-type="chapter"],.edition2 nav[data-type="toc"] li[data-type="part"],.edition2 nav[data-type="toc"] li[data-type="appendix"]{margin-left:0;font-size:1em;line-height:120%;text-indent:0}.edition2 nav[data-type="toc"] li[data-type="part"]{margin-top:25px}.edition2 nav[data-type="toc"] li[data-type="part"]>a{display:inline-block;width:100%;border-bottom:1px solid #333}.edition2 nav[data-type="toc"] li[data-type="part"] ol{margin-left:0;text-indent:0}.edition2 nav[data-type="toc"] li[data-type="chapter"]{margin-top:20px}.edition2 nav[data-type="toc"] li[data-type="chapter"]:last-of-type,.edition2 nav[data-type="toc"] li[data-type="appendix"]{margin-bottom:20px}.edition2 nav[data-type="toc"] li[data-type="chapter"] ol{margin-left:20px;font-family:sans-serif;font-size:1em;line-height:120%;text-indent:-10px}.edition2 nav[data-type="toc"] li[data-type="chapter"] ol ol{margin-left:10px;text-indent:-10px}.edition2 nav[data-type="toc"] li[data-type="preface"],.edition2 nav[data-type="toc"] li[data-type="foreword"],.edition2 nav[data-type="toc"] li[data-type="glossary"],.edition2 nav[data-type="toc"] li[data-type="index"]{font-size:1em;line-height:120%}.edition2 nav[data-type="toc"] li[data-type="preface"] ol,.edition2 nav[data-type="toc"] li[data-type="foreword"] ol{display:none}.edition2 section[data-type="preface"],.edition2 div[data-type="part"],.edition2 section[data-type="chapter"],.edition2 section[data-type="appendix"]{page-break-after:always}.edition2 nav[data-type="toc"]>h1,.edition2 div[data-type="part"]>h1,.edition2 section[data-type="preface"]>h1,.edition2 section[data-type="chapter"]>h1,.edition2 section[data-type="appendix"]>h1,.edition2 section[data-type="sect1"] h1{font-family:serif;line-height:120%}.edition2 section[data-type="sect2"] h2,.edition2 section[data-type="sect3"] h3{font-family:sans-serif;line-height:120%}.edition2 section[data-type="preface"]>h1,.edition2 section[data-type="chapter"]>h1,.edition2 section[data-type="appendix"]>h1{margin-top:70px;font-size:1.8em;margin-bottom:40px;text-align:left}.edition2 section[data-type="sect1"] h1{margin-top:40px;margin-bottom:20px;font-size:1.5em}.edition2 section[data-type="sect2"] h2{margin-top:30px;margin-bottom:10px;font-size:1.1em}.edition2 section[data-type="sect3"] h3{margin-top:20px;margin-bottom:10px;font-size:1.1em}.edition2 div[data-type="part"]>h1{margin-top:100px;margin-bottom:70px;font-size:1.8em;text-align:center}.edition2 ul,.edition2 ol{margin:15px 0 15px 40px}.edition2 ul li,.edition2 ol li,.edition2 ul li p,.edition2 ol li p{margin-top:5px;font-family:sans-serif;font-size:1em;line-height:120%;text-indent:0}.edition2 dl{margin-bottom:15px}.edition2 dt{margin-top:15px;margin-bottom:4px;font-family:sans-serif;font-size:0.9em;line-height:120%}.edition2 dd{margin-left:20px;text-indent:0}.edition2 dd p{text-indent:0}.edition2 table{margin-top:30px;margin-bottom:30px;border-collapse:collapse;border-bottom:1px solid #888}.edition2 table caption{margin:0 0 20px;padding:0;font-family:sans-serif;font-size:0.8em;line-height:120%;text-align:left}.edition2 tr{border-width:0px}.edition2 th{margin-top:0;font-family:sans-serif;font-size:0.8em;line-height:120%;text-align:left;border-top:1px solid #888;border-bottom:1px solid #888}.edition2 th,.edition2 td{padding:6px}.edition2 td,.edition2 table p{font-family:sans-serif;font-size:12px;line-height:120%}.edition2 table p{margin-top:6px;text-indent:0}.edition2 td pre.programlisting,.edition2 td pre.screen,.edition2 td pre.literallayout,.edition2 td code,.edition2 td #documentation #main p tt,#documentation #main p .edition2 td tt{word-wrap:break-word;white-space:pre-wrap}.edition2 figure{display:block;padding:0;margin-top:30px;margin-bottom:30px;page-break-inside:avoid}.edition2 figure img{max-width:100%;padding:5px 0 5px 0;margin:0;border-top:1px solid #888;border-bottom:1px solid #888}.edition2 figcaption{display:block;font-family:serif;font-size:1em;font-style:italic;line-height:120%}.edition2 aside{padding:20px 20px 10px;margin:30px 0;background-color:#d8d8d8;border:1px solid #d8d8d8}.edition2 aside h5{padding:0;margin:0;font-family:sans-serif;font-size:1em;line-height:120%;text-align:center}.edition2 aside h6{font-family:sans-serif;font-size:0.9em;font-weight:bold;line-height:120%}.edition2 aside p{margin-top:6px;font-family:serif;font-size:1em;line-height:130%;text-indent:0}.edition2 div[data-type="note"],.edition2 div[data-type="warning"]{padding:10px 0;margin:30px;border-top:2px solid #888;border-bottom:1px solid #d8d8d8;page-break-inside:avoid}.edition2 div[data-type="note"] h1,.edition2 div[data-type="warning"] h1{padding:0;margin:4px 0;font-family:sans-serif;font-size:0.8em;font-weight:bold;color:#000;text-align:center;text-transform:uppercase}.edition2 div[data-type="note"] p,.edition2 div[data-type="warning"] p{font-family:serif;font-size:1em;line-height:120%;text-indent:0}.edition2 pre,.edition2 code,.edition2 #documentation #main p tt,#documentation #main p .edition2 tt{font-family:monospace}.edition2 pre{background:#eee}.edition2 pre code,.edition2 pre #documentation #main p tt,#documentation #main p .edition2 pre tt{display:inline;background:#eee;border:0}.edition2 pre{margin:10px 0;overflow-x:auto;font-size:0.9em;line-height:120%;color:#333}.edition2 code,.edition2 #documentation #main p tt,#documentation #main p .edition2 tt{padding:0;color:#333;background:#eee;border:1px solid #f5f5f5}.edition2 table pre{text-indent:0}.edition2 div[data-type="note"] code,.edition2 div[data-type="note"] #documentation #main p tt,#documentation #main p .edition2 div[data-type="note"] tt,.edition2 div[data-type="warning"] code,.edition2 div[data-type="warning"] #documentation #main p tt,#documentation #main p .edition2 div[data-type="warning"] tt,.edition2 aside code,.edition2 aside #documentation #main p tt,#documentation #main p .edition2 aside tt,.edition2 table code,.edition2 table #documentation #main p tt,#documentation #main p .edition2 table tt{font-size:inherit;line-height:inherit}.edition2 div[data-type="example"] h5{padding-bottom:6px;margin-top:30px;font-family:sans-serif;font-size:0.8em;line-height:120%;border-bottom:1px solid #d8d8d8}.edition2 blockquote{margin-right:30px;margin-left:30px;font-family:sans-serif;font-size:0.9em;line-height:130%}.edition2 blockquote p{text-indent:0}.edition2 div.navbar{position:fixed;top:0;left:0;width:100%;padding:10px 20px;font-family:sans-serif;background-color:#e8e8e8;border-bottom:1px solid #d8d8d8}.edition2 div.navbar h1{float:left;padding:0;margin:0;font-size:1em;font-weight:normal;color:#999}.edition2 div.navbar p{float:right;padding:0;margin:0;font-family:sans-serif;font-size:1em;font-weight:normal}.edition2 div.navbar p a{color:#999;text-decoration:none}@media screen and (min-width: 480px) and (max-width: 1024px){.edition2 body{width:100%;padding:20px}}@media screen and (max-width: 480px){.edition2 body{width:100%;padding:10px}.edition2 div.navbar{position:relative;padding:10px 20px;text-align:center;border-bottom:2px solid #e8e8e8;box-shadow:0 0 0 #f0f0f0}.edition2 div.navbar h1{float:none;margin-bottom:10px}.edition2 div.navbar p{float:none;text-indent:0}}.edition2 pre code.hll,.edition2 pre #documentation #main p tt.hll,#documentation #main p .edition2 pre tt.hll{background-color:#ffffcc}.edition2 pre code.c,.edition2 pre #documentation #main p tt.c,#documentation #main p .edition2 pre tt.c{color:#0099FF;font-style:italic}.edition2 pre code.err,.edition2 pre #documentation #main p tt.err,#documentation #main p .edition2 pre tt.err{color:#AA0000}.edition2 pre code.k,.edition2 pre #documentation #main p tt.k,#documentation #main p .edition2 pre tt.k{color:#006699;font-weight:bold}.edition2 pre code.o,.edition2 pre #documentation #main p tt.o,#documentation #main p .edition2 pre tt.o{color:#555555}.edition2 pre code.cm,.edition2 pre #documentation #main p tt.cm,#documentation #main p .edition2 pre tt.cm{color:#35586C;font-style:italic}.edition2 pre code.cp,.edition2 pre #documentation #main p tt.cp,#documentation #main p .edition2 pre tt.cp{color:#009999}.edition2 pre code.c1,.edition2 pre #documentation #main p tt.c1,#documentation #main p .edition2 pre tt.c1{color:#35586C;font-style:italic}.edition2 pre code.cs,.edition2 pre #documentation #main p tt.cs,#documentation #main p .edition2 pre tt.cs{color:#35586C;font-weight:bold;font-style:italic}.edition2 pre code.gd,.edition2 pre #documentation #main p tt.gd,#documentation #main p .edition2 pre tt.gd{background-color:#FFCCCC}.edition2 pre code.ge,.edition2 pre #documentation #main p tt.ge,#documentation #main p .edition2 pre tt.ge{font-style:italic}.edition2 pre code.gr,.edition2 pre #documentation #main p tt.gr,#documentation #main p .edition2 pre tt.gr{color:#FF0000}.edition2 pre code.gh,.edition2 pre #documentation #main p tt.gh,#documentation #main p .edition2 pre tt.gh{color:#003300;font-weight:bold}.edition2 pre code.gi,.edition2 pre #documentation #main p tt.gi,#documentation #main p .edition2 pre tt.gi{background-color:#CCFFCC}.edition2 pre code.go,.edition2 pre #documentation #main p tt.go,#documentation #main p .edition2 pre tt.go{color:#000000}.edition2 pre code.gp,.edition2 pre #documentation #main p tt.gp,#documentation #main p .edition2 pre tt.gp{color:#000099;font-weight:bold}.edition2 pre code.gs,.edition2 pre #documentation #main p tt.gs,#documentation #main p .edition2 pre tt.gs{font-weight:bold}.edition2 pre code.gu,.edition2 pre #documentation #main p tt.gu,#documentation #main p .edition2 pre tt.gu{color:#003300;font-weight:bold}.edition2 pre code.gt,.edition2 pre #documentation #main p tt.gt,#documentation #main p .edition2 pre tt.gt{color:#99CC66}.edition2 pre code.kc,.edition2 pre #documentation #main p tt.kc,#documentation #main p .edition2 pre tt.kc{color:#006699;font-weight:bold}.edition2 pre code.kd,.edition2 pre #documentation #main p tt.kd,#documentation #main p .edition2 pre tt.kd{color:#006699;font-weight:bold}.edition2 pre code.kn,.edition2 pre #documentation #main p tt.kn,#documentation #main p .edition2 pre tt.kn{color:#006699;font-weight:bold}.edition2 pre code.kp,.edition2 pre #documentation #main p tt.kp,#documentation #main p .edition2 pre tt.kp{color:#006699}.edition2 pre code.kr,.edition2 pre #documentation #main p tt.kr,#documentation #main p .edition2 pre tt.kr{color:#006699;font-weight:bold}.edition2 pre code.kt,.edition2 pre #documentation #main p tt.kt,#documentation #main p .edition2 pre tt.kt{color:#007788;font-weight:bold}.edition2 pre code.m,.edition2 pre #documentation #main p tt.m,#documentation #main p .edition2 pre tt.m{color:#FF6600}.edition2 pre code.s,.edition2 pre #documentation #main p tt.s,#documentation #main p .edition2 pre tt.s{color:#CC3300}.edition2 pre code.na,.edition2 pre #documentation #main p tt.na,#documentation #main p .edition2 pre tt.na{color:#330099}.edition2 pre code.nb,.edition2 pre #documentation #main p tt.nb,#documentation #main p .edition2 pre tt.nb{color:#336666}.edition2 pre code.nc,.edition2 pre #documentation #main p tt.nc,#documentation #main p .edition2 pre tt.nc{color:#00AA88;font-weight:bold}.edition2 pre code.no,.edition2 pre #documentation #main p tt.no,#documentation #main p .edition2 pre tt.no{color:#336600}.edition2 pre code.nd,.edition2 pre #documentation #main p tt.nd,#documentation #main p .edition2 pre tt.nd{color:#9999FF}.edition2 pre code.ni,.edition2 pre #documentation #main p tt.ni,#documentation #main p .edition2 pre tt.ni{color:#999999;font-weight:bold}.edition2 pre code.ne,.edition2 pre #documentation #main p tt.ne,#documentation #main p .edition2 pre tt.ne{color:#CC0000;font-weight:bold}.edition2 pre code.nf,.edition2 pre #documentation #main p tt.nf,#documentation #main p .edition2 pre tt.nf{color:#CC00FF}.edition2 pre code.nl,.edition2 pre #documentation #main p tt.nl,#documentation #main p .edition2 pre tt.nl{color:#9999FF}.edition2 pre code.nn,.edition2 pre #documentation #main p tt.nn,#documentation #main p .edition2 pre tt.nn{color:#00CCFF;font-weight:bold}.edition2 pre code.nt,.edition2 pre #documentation #main p tt.nt,#documentation #main p .edition2 pre tt.nt{color:#330099;font-weight:bold}.edition2 pre code.nv,.edition2 pre #documentation #main p tt.nv,#documentation #main p .edition2 pre tt.nv{color:#003333}.edition2 pre code.ow,.edition2 pre #documentation #main p tt.ow,#documentation #main p .edition2 pre tt.ow{color:#000000;font-weight:bold}.edition2 pre code.w,.edition2 pre #documentation #main p tt.w,#documentation #main p .edition2 pre tt.w{color:#bbbbbb}.edition2 pre code.mf,.edition2 pre #documentation #main p tt.mf,#documentation #main p .edition2 pre tt.mf{color:#FF6600}.edition2 pre code.mh,.edition2 pre #documentation #main p tt.mh,#documentation #main p .edition2 pre tt.mh{color:#FF6600}.edition2 pre code.mi,.edition2 pre #documentation #main p tt.mi,#documentation #main p .edition2 pre tt.mi{color:#FF6600}.edition2 pre code.mo,.edition2 pre #documentation #main p tt.mo,#documentation #main p .edition2 pre tt.mo{color:#FF6600}.edition2 pre code.sb,.edition2 pre #documentation #main p tt.sb,#documentation #main p .edition2 pre tt.sb{color:#CC3300}.edition2 pre code.sc,.edition2 pre #documentation #main p tt.sc,#documentation #main p .edition2 pre tt.sc{color:#CC3300}.edition2 pre code.sd,.edition2 pre #documentation #main p tt.sd,#documentation #main p .edition2 pre tt.sd{color:#CC3300;font-style:italic}.edition2 pre code.s2,.edition2 pre #documentation #main p tt.s2,#documentation #main p .edition2 pre tt.s2{color:#CC3300}.edition2 pre code.se,.edition2 pre #documentation #main p tt.se,#documentation #main p .edition2 pre tt.se{color:#CC3300;font-weight:bold}.edition2 pre code.sh,.edition2 pre #documentation #main p tt.sh,#documentation #main p .edition2 pre tt.sh{color:#CC3300}.edition2 pre code.si,.edition2 pre #documentation #main p tt.si,#documentation #main p .edition2 pre tt.si{color:#AA0000}.edition2 pre code.sx,.edition2 pre #documentation #main p tt.sx,#documentation #main p .edition2 pre tt.sx{color:#CC3300}.edition2 pre code.sr,.edition2 pre #documentation #main p tt.sr,#documentation #main p .edition2 pre tt.sr{color:#33AAAA}.edition2 pre code.s1,.edition2 pre #documentation #main p tt.s1,#documentation #main p .edition2 pre tt.s1{color:#CC3300}.edition2 pre code.ss,.edition2 pre #documentation #main p tt.ss,#documentation #main p .edition2 pre tt.ss{color:#AA6600}.edition2 pre code.bp,.edition2 pre #documentation #main p tt.bp,#documentation #main p .edition2 pre tt.bp{color:#336666}.edition2 pre code.vc,.edition2 pre #documentation #main p tt.vc,#documentation #main p .edition2 pre tt.vc{color:#003333}.edition2 pre code.vg,.edition2 pre #documentation #main p tt.vg,#documentation #main p .edition2 pre tt.vg{color:#003333}.edition2 pre code.vi,.edition2 pre #documentation #main p tt.vi,#documentation #main p .edition2 pre tt.vi{color:#003333}.edition2 pre code.il,.edition2 pre #documentation #main p tt.il,#documentation #main p .edition2 pre tt.il{color:#FF6600}.edition2 pre code.g,.edition2 pre #documentation #main p tt.g,#documentation #main p .edition2 pre tt.g{color:#005500}.edition2 pre code.l,.edition2 pre #documentation #main p tt.l,#documentation #main p .edition2 pre tt.l{color:#CC6600}.edition2 pre code.l,.edition2 pre #documentation #main p tt.l,#documentation #main p .edition2 pre tt.l{color:#FF9900}.edition2 pre code.n,.edition2 pre #documentation #main p tt.n,#documentation #main p .edition2 pre tt.n{color:#000088}.edition2 pre code.nx,.edition2 pre #documentation #main p tt.nx,#documentation #main p .edition2 pre tt.nx{color:#000088}.edition2 pre code.py,.edition2 pre #documentation #main p tt.py,#documentation #main p .edition2 pre tt.py{color:#9966FF}.edition2 pre code.p,.edition2 pre #documentation #main p tt.p,#documentation #main p .edition2 pre tt.p{color:#000000}.edition2 pre code.x,.edition2 pre #documentation #main p tt.x,#documentation #main p .edition2 pre tt.x{color:#FF0066}.edition2 pre[data-code-language="console"]{padding:10px;background:#eee}.edition2 pre[data-code-language="console"] code.go,.edition2 pre[data-code-language="console"] #documentation #main p tt.go,#documentation #main p .edition2 pre[data-code-language="console"] tt.go{font-size:1.0em;color:#555}.edition2 pre[data-code-language="console"] code.gp,.edition2 pre[data-code-language="console"] #documentation #main p tt.gp,#documentation #main p .edition2 pre[data-code-language="console"] tt.gp{font-weight:bold;color:#009900}body{padding:0;margin:0;font-family:Adelle, Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif;font-size:14px;line-height:22px;color:#4e443c;background:#f0efe7 url("../images/bg/body.jpg")}.windows.chrome body,.windows.ie8 body{font-family:Roboto Slab, DejaVu Serif, Georgia, Times New Roman, sans-serif !important}.inner{position:relative;width:940px;margin:0 auto;overflow:visible}.inner:before{display:table;content:""}.inner:after{display:table;clear:both;content:""}aside{float:left;width:218px;margin-bottom:35px}.banner-message{position:relative;padding:1em 100px;margin-bottom:30px;font-size:100%;color:#855;background-color:#fcbda5}.banner-message a{color:#c22}.banner-message .dismiss{position:absolute;top:0;right:0;width:2em;padding:0;line-height:2em;background:none;border:0}#content{float:right;width:702px}#main{padding:22px;margin-bottom:35px;background-color:#fcfcfa;border:solid 1px #e2e0d8;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px}#main .two-column:before{display:table;content:""}#main .two-column:after{display:table;clear:both;content:""}#main .two-column .column-left{width:47%;float:left}#main .two-column .column-right{width:47%;float:right}#main .callout,#main .bottom-nav,#main #logo-license,#main #book-container{background-color:#e9e8e0;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 14px 4px;margin-bottom:1.4em}#main .callout p,#main .bottom-nav p,#main #logo-license p,#main #book-container p{margin-bottom:0}#main img{max-width:100%;height:auto}#masthead{height:295px;margin-top:-20px;margin-bottom:2em;background:transparent url("../images/bg/isometric-grid.png") top right repeat;background-size:35px 21px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){#masthead{background:transparent url("../images/bg/isometric-grid@2x.png") top right repeat;background-size:35px 21px}}#masthead .inner{padding-top:20px}#masthead .inner p{width:558px;margin-bottom:1.2em;font-size:18px;line-height:26.4px}#masthead .inner .promo{font-weight:bold}#masthead .inner .promo img{position:relative;top:-6px}#masthead .inner img.illustration{position:absolute;right:-30px;top:24px}header{position:relative;padding-bottom:26px;margin-top:14px}header #tagline{position:absolute;top:11px;left:120px;display:block;margin-top:1px;font-size:24px;line-height:24px;color:#9a9994}header #tagline em{letter-spacing:1px}aside nav ul{margin-bottom:1.4em;margin-left:0;font-size:16px;font-weight:bold;list-style:none}aside nav ul li{margin-bottom:0.5em}aside nav ul li a{color:#413932}aside nav ul li a.active,aside nav ul li a:hover{color:#f14e32}aside nav ul li ul{display:none;margin-top:0.3em;margin-left:20px;font-size:13px;font-weight:normal}aside nav ul li ul li{margin-bottom:0}aside nav ul li ul li a.active{font-weight:bold}aside nav ul li ul.expanded{display:block}.bottom-nav{margin-top:2em;font-weight:bold}.bottom-nav:before{display:table;content:""}.bottom-nav:after{display:table;clear:both;content:""}.bottom-nav .previous{float:left}.bottom-nav .next{float:right}section.about.current{display:block}section.about .bottom-nav{display:none}p.center{text-align:center}#logo-license{padding:20px !important;margin-top:2em}#logo-license p{font-size:12px;line-height:1.4;color:#9a9994}#logo-license p+p{margin-top:14px}#logo-license img{float:left;margin-right:20px}.callout.downloading,.downloading.bottom-nav,#logo-license.downloading,#book-container.downloading{background:#e9e8e0 url(../images/icons/download.png) 24px 24px no-repeat;padding:20px 30px 20px 100px !important}.callout.downloading h3,.downloading.bottom-nav h3,#logo-license.downloading h3,#book-container.downloading h3{font-size:18px;color:#f14e32}.callout.downloading p,.downloading.bottom-nav p,#logo-license.downloading p,#book-container.downloading p{margin-bottom:15px !important;font-size:15px;line-height:1.3em}.callout.downloading p.small,.downloading.bottom-nav p.small,#logo-license.downloading p.small,#book-container.downloading p.small{margin-bottom:0 !important;font-size:12px;line-height:1.4;color:#9a9994}.section-nav-container,#reference-version,#book-chapters{position:relative;background-color:#ebe9e1;background-color:rgba(223,221,213,0.33);-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;padding:8px 12px 6px;margin-bottom:10px;font-size:13px;font-weight:bold}.section-nav-container .light,#reference-version .light,#book-chapters .light{font-weight:normal}.section-nav-container a,#reference-version a,#book-chapters a{font-weight:bold;position:relative}.section-nav-container .dropdown-panel,#reference-version .dropdown-panel,#book-chapters .dropdown-panel{top:33px}.section-nav-container .dropdown-panel .three-column:before,#reference-version .dropdown-panel .three-column:before,#book-chapters .dropdown-panel .three-column:before{display:table;content:""}.section-nav-container .dropdown-panel .three-column:after,#reference-version .dropdown-panel .three-column:after,#book-chapters .dropdown-panel .three-column:after{display:table;clear:both;content:""}.section-nav-container .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-left{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-middle{float:left;width:31%;padding-right:3%}.section-nav-container .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-right,#book-chapters .dropdown-panel .three-column .column-right{float:left;width:31%}a.dropdown-trigger{padding:4px 5px;border:solid 1px transparent}a.dropdown-trigger.active{position:relative;z-index:200;background-color:#fff !important;-webkit-border-top-left-radius:3px;-moz-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-top-right-radius:3px;border-top-right-radius:3px;border:solid 1px #c6c4b8;border-bottom:0}.dropdown-panel{position:absolute;z-index:199;display:none;background-color:#fff;border:solid 1px #c6c4b8;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc}.dropdown-panel.left{-webkit-border-top-left-radius:0;-moz-border-top-left-radius:0;border-top-left-radius:0}.dropdown-panel.right{-webkit-border-top-right-radius:0;-moz-border-top-right-radius:0;border-top-right-radius:0}footer{padding:20px 0 40px;margin-top:35px;clear:both;font-size:12px;line-height:15.4px;color:#9a9994;border-top:solid 1px #d8d7cf}footer:before{display:table;content:""}footer:after{display:table;clear:both;content:""}footer a{color:#403f3c}footer a:hover{color:#0b0b0a}footer .site-source{float:left;padding-left:46px;background:transparent url("../images/icons/code.png") 0 2px no-repeat;background-size:38px 23px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){footer .site-source{background:transparent url("../images/icons/code@2x.png") 0 2px no-repeat;background-size:38px 23px}}footer .sfc-member{float:right;text-align:right}table.benchmarks{width:100%;padding:20px;margin-bottom:20px}table.benchmarks tr th.right{text-align:center}table.benchmarks tr td.desc{font-size:0.8em;color:#888}table.benchmarks tr td.number{font-family:monospace;text-align:right}table.benchmarks tr td{padding:0 10px}.scrollToTop{-webkit-border-radius:50px;-moz-border-radius:50px;-ms-border-radius:50px;border-radius:50px;display:none;position:fixed;background-color:rgba(223,221,213,0.33);right:20px;bottom:6.25rem;padding:0.8rem;height:20px;transition:background-color 0.2s;width:20px}.scrollToTop:hover{background-color:rgba(250,250,250,0.9);-webkit-box-shadow:2px;-moz-box-shadow:2px;box-shadow:2px}.scrollToTop:hover::before{transform:translateX(-50%);left:50%;width:0;height:0;color:var(--color-neutral-emphasis-plus);content:"";border:6px solid transparent;border-color:#333333 transparent transparent;top:-0.55rem;position:absolute}.scrollToTop:hover::after{transform:translateX(-50%);left:50%;top:-2rem;border-radius:4px;position:absolute;content:attr(data-label);word-wrap:break-word;white-space:pre;padding:.5em .75em;color:#e9e8e0;background-color:#333333;font:normal normal 11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}.no-js.scrollToTop{display:block}@media (max-width: 940px){.responsive-table{overflow-x:auto}.center img{height:100%}header{padding-bottom:2.5rem}header a,header span{padding-left:1rem;margin-bottom:10px}#home .inner>header{padding-bottom:2rem}#content{width:100%}.inner{width:100%}#content-wrapper{padding:0.8rem}#masthead{height:unset}#masthead .inner{display:flex;margin-top:1.8rem}#masthead .inner div:first-of-type{padding:1rem}#masthead .inner .illustration-wrapper{display:flex;align-items:center}#masthead .inner p{width:unset}#masthead .inner img.illustration{position:unset;right:unset;top:unset;max-height:100%}footer{padding-left:1rem;padding-right:1rem}}@media (max-width: 640px){header{padding-bottom:3rem}header #tagline{font-size:0.8rem;top:0;padding-right:1rem}#home .inner>header{padding-bottom:2.5rem}#masthead .inner{flex-direction:column-reverse}#masthead .illustration-wrapper{display:flex;justify-content:center;overflow:hidden}#masthead .illustration-wrapper .illustration{width:80%;height:100%}#main>.two-column .column-right{position:relative;display:flex;justify-content:center}#main .two-column{display:flex;flex-direction:column}#main .two-column .column-left,#main .two-column .column-right{width:100%}#book-chapters .dropdown-panel,#reference-version .dropdown-panel{width:unset}#book-chapters .dropdown-panel .three-column,#reference-version .dropdown-panel .three-column{display:flex;flex-direction:column;height:70vh;overflow-y:scroll;overflow-x:hidden}#book-chapters .dropdown-panel .three-column .column-left,#book-chapters .dropdown-panel .three-column .column-middle,#book-chapters .dropdown-panel .three-column .column-right,#reference-version .dropdown-panel .three-column .column-left,#reference-version .dropdown-panel .three-column .column-middle,#reference-version .dropdown-panel .three-column .column-right{width:100%;max-width:300px}#book-chapters .dropdown-panel .three-column .unstyled a,#book-chapters .dropdown-panel .three-column ul.stackoverflow a,#book-chapters .dropdown-panel .three-column ol#about-nav a,#book-chapters .dropdown-panel .three-column .content-list a,#book-chapters .dropdown-panel .three-column ul.books-list a,#book-chapters .dropdown-panel .three-column ul.video-thumbnails a,#book-chapters .dropdown-panel .three-column ul.gui-thumbnails a,#book-chapters .dropdown-panel .three-column .section-nav-container a,#book-chapters .dropdown-panel .three-column #download-next-steps a,#book-chapters .dropdown-panel .three-column #search-results table ul a,#search-results table #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column ol.full-search-results a,#book-chapters .dropdown-panel .three-column #front-nav ul a,#front-nav #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #companies-projects ul a,#companies-projects #book-chapters .dropdown-panel .three-column ul a,#book-chapters .dropdown-panel .three-column #reference-version a,#book-chapters .dropdown-panel .three-column ol.reference-previous-versions a,#book-chapters .dropdown-panel .three-column ol.book-toc a,#book-chapters .dropdown-panel .three-column #book-chapters a,#reference-version .dropdown-panel .three-column .unstyled a,#reference-version .dropdown-panel .three-column ul.stackoverflow a,#reference-version .dropdown-panel .three-column ol#about-nav a,#reference-version .dropdown-panel .three-column .content-list a,#reference-version .dropdown-panel .three-column ul.books-list a,#reference-version .dropdown-panel .three-column ul.video-thumbnails a,#reference-version .dropdown-panel .three-column ul.gui-thumbnails a,#reference-version .dropdown-panel .three-column .section-nav-container a,#reference-version .dropdown-panel .three-column #download-next-steps a,#reference-version .dropdown-panel .three-column #search-results table ul a,#search-results table #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column ol.full-search-results a,#reference-version .dropdown-panel .three-column #front-nav ul a,#front-nav #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #companies-projects ul a,#companies-projects #reference-version .dropdown-panel .three-column ul a,#reference-version .dropdown-panel .three-column #reference-version a,#reference-version .dropdown-panel .three-column ol.reference-previous-versions a,#reference-version .dropdown-panel .three-column ol.book-toc a,#reference-version .dropdown-panel .three-column #book-chapters a{padding:0.15rem 0;display:block}#book-chapters .dropdown-panel .three-column .chapter h2,#reference-version .dropdown-panel .three-column .chapter h2{display:flex;align-items:center}#book-chapters .dropdown-panel .three-column .chapter h2 a,#reference-version .dropdown-panel .three-column .chapter h2 a{padding-left:5px}#book-chapters .dropdown-panel .three-column .chapter ol li,#reference-version .dropdown-panel .three-column .chapter ol li{display:flex;align-items:center;margin-bottom:6px;padding:0.45rem 0}#book-chapters .dropdown-panel .three-column .chapter ol li a,#reference-version .dropdown-panel .three-column .chapter ol li a{padding-left:5px}footer{display:flex;justify-content:center;flex-direction:column;align-items:center}footer .site-source{margin-bottom:1rem}.scrollToTop{bottom:6rem}}.content-list,ul.books-list,ul.video-thumbnails,ul.gui-thumbnails{margin-left:0}.content-list li,ul.books-list li,ul.video-thumbnails li,ul.gui-thumbnails li{margin-bottom:1em}.content-list .description,ul.books-list .description,ul.video-thumbnails .description,ul.gui-thumbnails .description{font-size:12px;line-height:15.4px}ul.video-thumbnails,ul.gui-thumbnails{margin-top:1em}ul.video-thumbnails li,ul.gui-thumbnails li{margin-bottom:2em}ul.video-thumbnails li img,ul.gui-thumbnails li img{display:block;padding:3px;margin-bottom:5px;border:solid 1px #d8d7cf}ul.gui-thumbnails li{display:inline-block;width:49%}ul.gui-thumbnails li.masked{display:none}ul.books-list li{padding-left:125px;height:150px}ul.books-list li:before{display:table;content:""}ul.books-list li:after{display:table;clear:both;content:""}ul.books-list li img{float:left;width:109px;max-height:150px;margin-right:-125px;margin-left:-125px;border:solid 1px #b7b7b7}ul.books-list li img.creative-commons{display:block;float:none;width:auto;margin-top:2em;margin-right:0;margin-left:0;border:0}ol#about-nav:before{display:table;content:""}ol#about-nav:after{display:table;clear:both;content:""}ol#about-nav li{display:inline;float:left;width:80px;height:85px;padding-right:5px;margin-right:7px}ol#about-nav li:last-child{margin-right:0}ol#about-nav li a{display:block;width:60px;height:80px;padding:0 15px;font-size:13px;line-height:20px;text-align:center;color:#4e443c;opacity:0.9;background:transparent url("../images/icons/nav-circles.png") top right no-repeat;background-size:90px 180px}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){ol#about-nav li a{background:transparent url("../images/icons/nav-circles@2x.png") top right no-repeat;background-size:90px 180px}}ol#about-nav li a.current{background:transparent url("../images/icons/nav-circles.png") 0 -90px no-repeat;background-size:90px 180px;color:#fff;opacity:1}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min--moz-device-pixel-ratio: 2),only screen and (-o-min-device-pixel-ratio: 2/1){ol#about-nav li a.current{background:transparent url("../images/icons/nav-circles@2x.png") 0 -90px no-repeat;background-size:90px 180px}}ol#about-nav li a.one-line{height:55px;padding-top:35px}ol#about-nav li a.two-line{height:62px;padding-top:28px}ol#about-nav li a.three-line{height:73px;padding-top:17px}ol#about-nav li a:hover{opacity:1}ul.stackoverflow{font-size:12px}ul.stackoverflow li{margin-bottom:1em}ul.stackoverflow a{display:block;line-height:1.2;font-weight:bold}ul.stackoverflow span{display:block;color:#9a9994}ul.stackoverflow span strong{color:#81807a}ul.stackoverflow span em{color:#cccbc8}table.binaries td{position:relative;width:auto;padding:8px 20px 6px 0}table.binaries a{font-weight:bold;border:solid 1px transparent}@media (max-width: 940px){ol#about-nav{display:flex;flex-wrap:wrap;justify-content:space-between}}@media (max-width: 640px){ol#about-nav{justify-content:unset}ol#about-nav li{padding-right:0;margin-right:0.6rem;flex-basis:29%;margin-bottom:1rem}}code,#documentation #main p tt{display:inline;padding:0 5px;word-break:break-all}pre{background-color:#fff;border:solid 1px #efeee6;border-radius:3px;color:#f14e32;display:block;font-family:Courier, monospace;line-height:18px;margin-bottom:1em;overflow:auto;padding:10px 15px 13px}.d-flex{display:flex}
@@ -1,20 +0,0 @@
1
- /* Modernizr 2.5.3 (Custom Build) | MIT & BSD
2
- * Build: http://www.modernizr.com/download/#-fontface-input-inputtypes-shiv-cssclasses-addtest-teststyles-load
3
- */
4
- ;window.Modernizr=function(a,b,c){function w(a){j.cssText=a}function x(a,b){return w(prefixes.join(a+";")+(b||""))}function y(a,b){return typeof a===b}function z(a,b){return!!~(""+a).indexOf(b)}function A(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:y(f,"function")?f.bind(d||b):f}return!1}function C(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)p[c[d]]=c[d]in k;return p.list&&(p.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),p}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:/^color$/.test(f)?(g.appendChild(k),g.offsetWidth,e=k.value!=l,g.removeChild(k)):e=k.value!=l)),o[a[d]]=!!e;return o}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.5.3",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n={},o={},p={},q=[],r=q.slice,s,t=function(a,c,d,e){var f,i,j,k=b.createElement("div"),l=b.body,m=l?l:b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),k.appendChild(j);return f=["&#173;","<style>",a,"</style>"].join(""),k.id=h,(l?k:m).innerHTML+=f,m.appendChild(k),l||(m.style.background="",g.appendChild(m)),i=c(k,a),l?k.parentNode.removeChild(k):m.parentNode.removeChild(m),!!i},u={}.hasOwnProperty,v;!y(u,"undefined")&&!y(u.call,"undefined")?v=function(a,b){return u.call(a,b)}:v=function(a,b){return b in a&&y(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=r.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(r.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(r.call(arguments)))};return e});var B=function(a,c){var d=a.join(""),f=c.length;t(d,function(a,c){var d=b.styleSheets[b.styleSheets.length-1],g=d?d.cssRules&&d.cssRules[0]?d.cssRules[0].cssText:d.cssText||"":"",h=a.childNodes,i={};while(f--)i[h[f].id]=h[f];e.fontface=/src/i.test(g)&&g.indexOf(c.split(" ")[0])===0},f,c)}(['@font-face {font-family:"font";src:url("https://")}'],["fontface"]);n.fontface=function(){return e.fontface};for(var D in n)v(n,D)&&(s=D.toLowerCase(),e[s]=n[D](),q.push((e[s]?"":"no-")+s));return e.input||C(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)v(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,g.className+=" "+(b?"":"no-")+a,e[a]=b}return e},w(""),i=k=null,function(a,b){function g(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function h(){var a=k.elements;return typeof a=="string"?a.split(" "):a}function i(a){var b={},c=a.createElement,e=a.createDocumentFragment,f=e();a.createElement=function(a){var e=(b[a]||(b[a]=c(a))).cloneNode();return k.shivMethods&&e.canHaveChildren&&!d.test(a)?f.appendChild(e):e},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+h().join().replace(/\w+/g,function(a){return b[a]=c(a),f.createElement(a),'c("'+a+'")'})+");return n}")(k,f)}function j(a){var b;return a.documentShived?a:(k.shivCSS&&!e&&(b=!!g(a,"article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio{display:none}canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden]{display:none}audio[controls]{display:inline-block;*display:inline;*zoom:1}mark{background:#FF0;color:#000}")),f||(b=!i(a)),b&&(a.documentShived=b),a)}var c=a.html5||{},d=/^<|^(?:button|form|map|select|textarea)$/i,e,f;(function(){var a=b.createElement("a");a.innerHTML="<xyz></xyz>",e="hidden"in a,f=a.childNodes.length==1||function(){try{b.createElement("a")}catch(a){return!0}var c=b.createDocumentFragment();return typeof c.cloneNode=="undefined"||typeof c.createDocumentFragment=="undefined"||typeof c.createElement=="undefined"}()})();var k={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:j};a.html5=k,j(b)}(this,b),e._version=d,e.testStyles=t,g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+q.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return o.call(a)=="[object Function]"}function e(a){return typeof a=="string"}function f(){}function g(a){return!a||a=="loaded"||a=="complete"||a=="uninitialized"}function h(){var a=p.shift();q=1,a?a.t?m(function(){(a.t=="c"?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){a!="img"&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l={},o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};y[c]===1&&(r=1,y[c]=[],l=b.createElement(a)),a=="object"?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),a!="img"&&(r||y[c]===2?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i(b=="c"?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),p.length==1&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&o.call(a.opera)=="[object Opera]",l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return o.call(a)=="[object Array]"},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,i){var j=b(a),l=j.autoCallback;j.url.split(".").pop().split("?").shift(),j.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]||h),j.instead?j.instead(a,e,f,g,i):(y[j.url]?j.noexec=!0:y[j.url]=1,f.load(j.url,j.forceCSS||!j.forceJS&&"css"==j.url.split(".").pop().split("?").shift()?"c":c,j.noexec,j.attrs,j.timeout),(d(e)||d(l))&&f.load(function(){k(),e&&e(j.origUrl,i,g),l&&l(j.origUrl,i,g),y[j.url]=2})))}function i(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var j,l,m=this.yepnope.loader;if(e(a))g(a,0,m,0);else if(w(a))for(j=0;j<a.length;j++)l=a[j],e(l)?g(l,0,m,0):w(l)?B(l):Object(l)===l&&i(l,m);else Object(a)===a&&i(a,m)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,b.readyState==null&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};
5
-
6
- Modernizr.addTest('webkit', function(){
7
- return RegExp(" AppleWebKit/").test(navigator.userAgent);
8
- });
9
-
10
- Modernizr.addTest('chrome', function(){
11
- return RegExp(" Chrome/").test(navigator.userAgent);
12
- });
13
-
14
- Modernizr.addTest('windows', function(){
15
- return RegExp("Win").test(navigator.platform);
16
- });
17
-
18
- Modernizr.addTest('ie8', function(){
19
- return RegExp("MSIE 8").test(navigator.userAgent);
20
- });