diff --git a/TP1/.editorconfig b/TP1/.editorconfig
new file mode 100644
index 0000000..f6c8080
--- /dev/null
+++ b/TP1/.editorconfig
@@ -0,0 +1,22 @@
+# For more information about the properties used in
+# this file, please see the EditorConfig documentation:
+# http://editorconfig.org/
+
+root = true
+
+[*]
+charset = utf-8
+end_of_line = lf
+indent_size = 4
+indent_style = space
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+[*.md]
+trim_trailing_whitespace = false
+
+[{.travis.yml,package.json}]
+# The indent size used in the `package.json` file cannot be changed
+# https://github.com/npm/npm/pull/3180#issuecomment-16336516
+indent_size = 2
+indent_style = space
diff --git a/TP1/.gitattributes b/TP1/.gitattributes
new file mode 100644
index 0000000..70d5e00
--- /dev/null
+++ b/TP1/.gitattributes
@@ -0,0 +1,21 @@
+# Automatically normalize line endings for all text-based files
+# http://git-scm.com/docs/gitattributes#_end_of_line_conversion
+* text=auto
+
+# For the following file types, normalize line endings to LF on
+# checkin and prevent conversion to CRLF when they are checked out
+# (this is required in order to prevent newline related issues like,
+# for example, after the build script is run)
+.* text eol=lf
+*.css text eol=lf
+*.html text eol=lf
+*.js text eol=lf
+*.json text eol=lf
+*.md text eol=lf
+*.sh text eol=lf
+*.txt text eol=lf
+*.xml text eol=lf
+
+# Exclude the `.htaccess` file from GitHub's language statistics
+# https://github.com/github/linguist#using-gitattributes
+dist/.htaccess linguist-vendored
diff --git a/TP1/.gitignore b/TP1/.gitignore
new file mode 100644
index 0000000..9eb74bc
--- /dev/null
+++ b/TP1/.gitignore
@@ -0,0 +1,2 @@
+archive
+node_modules
diff --git a/TP1/.idea/Livre d'or.html b/TP1/.idea/Livre d'or.html
new file mode 100644
index 0000000..84f11ed
--- /dev/null
+++ b/TP1/.idea/Livre d'or.html
@@ -0,0 +1,10 @@
+
+
+
+
+ Livre d'or
+
+
+
+
+
\ No newline at end of file
diff --git "a/TP1/.idea/Pr\303\251sentation.html" "b/TP1/.idea/Pr\303\251sentation.html"
new file mode 100644
index 0000000..1eaa8d1
--- /dev/null
+++ "b/TP1/.idea/Pr\303\251sentation.html"
@@ -0,0 +1,10 @@
+
+
+
+
+ Présentation
+
+
+ Hello
+
+
\ No newline at end of file
diff --git a/TP1/.idea/modules.xml b/TP1/.idea/modules.xml
index d4e5840..c77162a 100644
--- a/TP1/.idea/modules.xml
+++ b/TP1/.idea/modules.xml
@@ -2,7 +2,11 @@
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+>>>>>>> commit du TP1avec Php
\ No newline at end of file
diff --git a/TP1/.idea/php.xml b/TP1/.idea/php.xml
new file mode 100644
index 0000000..0151495
--- /dev/null
+++ b/TP1/.idea/php.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/TP1/.idea/untitled1.iml b/TP1/.idea/untitled1.iml
new file mode 100644
index 0000000..c956989
--- /dev/null
+++ b/TP1/.idea/untitled1.iml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/TP1/.idea/workspace.xml b/TP1/.idea/workspace.xml
index 5fec9a3..7e71d58 100644
--- a/TP1/.idea/workspace.xml
+++ b/TP1/.idea/workspace.xml
@@ -1,8 +1,13 @@
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+>>>>>>> commit du TP1avec Php
@@ -17,6 +22,7 @@
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -29,31 +35,82 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -61,41 +118,109 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -104,16 +229,35 @@
+=======
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
@@ -124,14 +268,20 @@
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -336,18 +648,34 @@
+=======
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -372,10 +700,35 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+
+
+
+
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -383,18 +736,34 @@
+=======
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -419,10 +788,35 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+
+
+
+
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -438,10 +832,32 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -536,10 +952,89 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -575,10 +1070,58 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -593,18 +1136,47 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
@@ -612,27 +1184,107 @@
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+>>>>>>> commit du TP1avec Php
+<<<<<<< a293a9e1d0b9f6783ea6e65b35554814ed2a7009
+=======
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+>>>>>>> commit du TP1avec Php
\ No newline at end of file
diff --git a/TP1/.jscsrc b/TP1/.jscsrc
new file mode 100644
index 0000000..a83f173
--- /dev/null
+++ b/TP1/.jscsrc
@@ -0,0 +1,68 @@
+{
+ "disallowEmptyBlocks": true,
+ "disallowKeywords": [
+ "with"
+ ],
+ "disallowMixedSpacesAndTabs": true,
+ "disallowMultipleLineStrings": true,
+ "disallowMultipleVarDecl": true,
+ "disallowSpaceAfterPrefixUnaryOperators": [
+ "!",
+ "+",
+ "++",
+ "-",
+ "--",
+ "~"
+ ],
+ "disallowSpaceBeforeBinaryOperators": [
+ ","
+ ],
+ "disallowSpaceBeforePostfixUnaryOperators": true,
+ "disallowSpacesInNamedFunctionExpression": {
+ "beforeOpeningRoundBrace": true
+ },
+ "disallowSpacesInsideArrayBrackets": true,
+ "disallowSpacesInsideParentheses": true,
+ "disallowTrailingComma": true,
+ "disallowTrailingWhitespace": true,
+ "requireCamelCaseOrUpperCaseIdentifiers": true,
+ "requireCapitalizedConstructors": true,
+ "requireCommaBeforeLineBreak": true,
+ "requireCurlyBraces": true,
+ "requireDotNotation": true,
+ "requireLineFeedAtFileEnd": true,
+ "requireParenthesesAroundIIFE": true,
+ "requireSpaceAfterBinaryOperators": true,
+ "requireSpaceAfterKeywords": [
+ "catch",
+ "do",
+ "else",
+ "for",
+ "if",
+ "return",
+ "switch",
+ "try",
+ "while"
+ ],
+ "requireSpaceAfterLineComment": true,
+ "requireSpaceBeforeBinaryOperators": true,
+ "requireSpaceBeforeBlockStatements": true,
+ "requireSpacesInAnonymousFunctionExpression": {
+ "beforeOpeningCurlyBrace": true
+ },
+ "requireSpacesInConditionalExpression": true,
+ "requireSpacesInFunctionDeclaration": {
+ "beforeOpeningCurlyBrace": true
+ },
+ "requireSpacesInFunctionExpression": {
+ "beforeOpeningCurlyBrace": true
+ },
+ "requireSpacesInNamedFunctionExpression": {
+ "beforeOpeningCurlyBrace": true
+ },
+ "requireSpacesInsideObjectBrackets": "allButNested",
+ "validateIndentation": 4,
+ "validateLineBreaks": "LF",
+ "validateParameterSeparator": ", ",
+ "validateQuoteMarks": "'"
+}
diff --git a/TP1/.jshintrc b/TP1/.jshintrc
new file mode 100644
index 0000000..8b2a0be
--- /dev/null
+++ b/TP1/.jshintrc
@@ -0,0 +1,32 @@
+{
+
+ // Enforcing options
+ // http://www.jshint.com/docs/options/#enforcing-options
+
+ "bitwise": true,
+ "eqeqeq": true,
+ "forin": true,
+ "latedef": true,
+ "noarg": true,
+ "nonbsp": true,
+ "nonew": true,
+ "undef": true,
+ "unused": true,
+
+ // - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+ // Relaxing options
+ // http://www.jshint.com/docs/options/#relaxing-options
+
+ "esnext": true,
+
+ // - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+ // Environments
+ // http://www.jshint.com/docs/options/#environments
+
+ "browser": true,
+ "jquery": true,
+ "node": true
+
+}
diff --git a/TP1/.travis.yml b/TP1/.travis.yml
new file mode 100644
index 0000000..3bcd3ab
--- /dev/null
+++ b/TP1/.travis.yml
@@ -0,0 +1,47 @@
+# For more information about the configurations used
+# in this file, please see the Travis CI documentation:
+# http://docs.travis-ci.com
+
+after_success:
+ - |
+
+ # Automatically update the content from the `dist/` directory
+ $(npm bin)/commit-changes --branch "master" \
+ --commands "npm run build" \
+ --commit-message "Update content from the \`dist\` directory [skip ci]"
+
+env:
+ global:
+
+ # The `secure` key contains three encrypted environment variables
+ # (GH_TOKEN, GH_USER_EMAIL and GH_USER_NAME), the values of which
+ # are used by the scripts that are automatically executed by Travis.
+ #
+ # Note: The `secure` key will only work for this repository, so if
+ # you create your own fork, you will need to generate your own key:
+ #
+ # travis encrypt -r "/" \
+ # GH_TOKEN="" \
+ # GH_USER_EMAIL="" \
+ # GH_USER_NAME=""
+ #
+ # To learn more about how to generate the:
+ #
+ # * `secure` key, see:
+ # http://docs.travis-ci.com/user/encryption-keys/
+ #
+ # * GitHub access token, see:
+ # https://help.github.com/articles/creating-an-access-token-for-command-line-use/
+
+ - secure: "OQnRHkXKdvSujTPm0DSXJFrso0zKltkso0e8zF/2GLI7ouv60ELHhYCrWFuoeefSJFbiPeH/9GXnTAv7y+gC08Ba/DSlXGaHl4db5xU/7AazzQR4YaTks6z0CfvlftdlimGOY27tuDU8hMfqHJKybJGcEvFKCVJms/7udYYh+CA="
+
+git:
+ depth: 10
+
+language: node_js
+
+node_js:
+ - "0.12"
+ - "4"
+
+sudo: false
diff --git a/TP1/CHANGELOG.md b/TP1/CHANGELOG.md
new file mode 100644
index 0000000..ccfc3aa
--- /dev/null
+++ b/TP1/CHANGELOG.md
@@ -0,0 +1,264 @@
+### 5.3.0 (January 12, 2016)
+
+* Update jQuery to `v1.12.0`.
+* Fetch `jQuery` from jQuery's CDN instead of Google's
+ ([#1737](https://github.com/h5bp/html5-boilerplate/issues/1737),
+ [#1739](https://github.com/h5bp/html5-boilerplate/issues/1739)).
+* Change print color for `:first-letter` and `:first-line`
+ pseudo-elements
+ ([#1715](https://github.com/h5bp/html5-boilerplate/pull/1715)).
+
+### 5.2.0 (May 1, 2015)
+
+* Update jQuery to `v1.11.3`
+ ([#1699](https://github.com/h5bp/html5-boilerplate/issues/1699)).
+* Deprecate protocol-relative URLs
+ ([#1694](https://github.com/h5bp/html5-boilerplate/issues/1694)).
+* Update high resolution media query
+ ([#1474](https://github.com/h5bp/html5-boilerplate/issues/1474)).
+* Update Apache Server Configs to `v2.14.0`.
+
+### 5.1.0 (April 1, 2015)
+
+* Update Normalize.css to `v3.0.3`.
+* Use `https://` in the Google Universal Analytics snippet
+ ([eee759b](https://github.com/h5bp/html5-boilerplate/commit/eee759bfe175e850bbc8e4ad0682ec4fe4bd05d6)).
+* Remove the `visibility: hidden` declaration from `.hidden`
+ ([#1663](https://github.com/h5bp/html5-boilerplate/issues/1663)).
+* Use ``
+ instead of ``
+ ([#1656](https://github.com/h5bp/html5-boilerplate/issues/1656)).
+* Update Apache Server Configs to `v2.13.0`.
+
+### 5.0.0 (February 1, 2015)
+
+* Update to jQuery 1.11.2.
+* Update Apache Server Configs to v2.11.0.
+* Rename Apple touch icon to `apple-touch-icon.png` and add
+ `` in `index.html`
+ ([#1622](https://github.com/h5bp/html5-boilerplate/issues/1622)).
+* Add vertical centering for `iframe`
+ ([#1613](https://github.com/h5bp/html5-boilerplate/issues/1613)).
+* Change the outdated browser prompt classname to `browserupgrade`
+ ([#1608](https://github.com/h5bp/html5-boilerplate/issues/1608)).
+* Update to Normalize.css 3.0.2.
+ ([#1050](https://github.com/h5bp/html5-boilerplate/issues/1050)).
+* Update `apple-touch-icon-precomposed.png` and the _"Apple touch
+ icons"_ related documentation
+ ([#1599](https://github.com/h5bp/html5-boilerplate/pull/1599)).
+* Add pseudo-elements to universal selector in print media query
+ ([#1585](https://github.com/h5bp/html5-boilerplate/pull/1585)).
+* Update to Modernizr 2.8.3.
+* Remove need to readjust margins in `404.html`
+ ([#1567](https://github.com/h5bp/html5-boilerplate/pull/1567)).
+* Add `/.editorconfig` file
+ ([#1561](https://github.com/h5bp/html5-boilerplate/issues/1561),
+ [#1564](https://github.com/h5bp/html5-boilerplate/issues/1564)).
+* Add `auto` to the Google Universal Analytics tracker create method
+ ([#1562](https://github.com/h5bp/html5-boilerplate/issues/1562)).
+* Add `timeline` and `timelineEnd` to the list of `console` methods
+ ([#1559](https://github.com/h5bp/html5-boilerplate/issues/1559)).
+* Add `lang=""` to ``
+ ([#1542](https://github.com/h5bp/html5-boilerplate/issues/1542)).
+* Use `` instead of ``
+ ([#1522](https://github.com/h5bp/html5-boilerplate/issues/1522)).
+* Add `/browserconfig.xml` file and tile images
+ ([#1481](https://github.com/h5bp/html5-boilerplate/issues/1481)).
+* Add `Disallow:` to `robots.txt`
+ ([#1487](https://github.com/h5bp/html5-boilerplate/issues/1487)).
+* Remove default foreground color from form elements
+ ([#1390](https://github.com/h5bp/html5-boilerplate/issues/1390)).
+* Remove default margin from print styles
+ ([#1477](https://github.com/h5bp/html5-boilerplate/issues/1477)).
+* Remove image replacement helper class `.ir`
+ ([#1472](https://github.com/h5bp/html5-boilerplate/issues/1472),
+ [#1475](https://github.com/h5bp/html5-boilerplate/issues/1475)).
+* Add vertical centering for `svg`
+ ([#1453](https://github.com/h5bp/html5-boilerplate/issues/1453)).
+* Redesign 404 page
+ ([#1443](https://github.com/h5bp/html5-boilerplate/pull/1443)).
+* Remove IE 6/7 hacks from `main.css`
+ ([#1050](https://github.com/h5bp/html5-boilerplate/issues/1050)).
+* Remove IE conditional classes
+ ([#1187](https://github.com/h5bp/html5-boilerplate/issues/1187),
+ [#1290](https://github.com/h5bp/html5-boilerplate/issues/1290)).
+
+### 4.3.0 (September 10, 2013)
+
+* Use one `apple-touch-icon` instead of six
+ ([#1367](https://github.com/h5bp/html5-boilerplate/issues/1367)).
+* Move font-related declarations from `body` to `html`
+ ([#1411](https://github.com/h5bp/html5-boilerplate/issues/1411)).
+* Update to Apache Server Configs 1.1.0.
+* Add `initial-scale=1` to the viewport `meta`
+ ([#1398](https://github.com/h5bp/html5-boilerplate/pull/1398)).
+* Vertical centering for audio-, canvas- and video-tags
+ ([#1326](https://github.com/h5bp/html5-boilerplate/issues/1326)).
+* Remove Google Chrome Frame related code
+ ([#1379](https://github.com/h5bp/html5-boilerplate/pull/1379),
+ [#1396](https://github.com/h5bp/html5-boilerplate/pull/1396)).
+* Update to Google Universal Analytics
+ ([#1347](https://github.com/h5bp/html5-boilerplate/issues/1347)).
+* Update to jQuery 1.10.2.
+* Update to Normalize.css 1.1.3.
+
+### 4.2.0 (April 8, 2013)
+
+* Remove Google Analytics protocol check
+ ([#1319](https://github.com/h5bp/html5-boilerplate/pull/1319)).
+* Update to Normalize.css 1.1.1.
+* Update Apache configurations to include the latest changes in the
+ canonical [`.htaccess`](https://github.com/h5bp/server-configs-apache)
+ file.
+* Use a protocol relative URL for the 404 template script.
+* Update to jQuery 1.9.1.
+
+### 4.1.0 (January 21, 2013)
+
+* Update to Normalize.css 1.1.0.
+* Update to jQuery 1.9.0.
+
+### 4.0.3 (January 12, 2013)
+
+* Use 32x32 favicon.ico
+ ([#1286](https://github.com/h5bp/html5-boilerplate/pull/1286)).
+* Remove named function expression in plugins.js
+ ([#1280](https://github.com/h5bp/html5-boilerplate/pull/1280)).
+* Adjust CSS image-replacement code
+ ([#1239](https://github.com/h5bp/html5-boilerplate/issues/1239)).
+* Update HiDPI example media query
+ ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)).
+
+### 4.0.2 (December 9, 2012)
+
+* Update placeholder icons.
+* Update to Normalize.css 1.0.2.
+* Update to jQuery 1.8.3.
+
+### 4.0.1 (October 20, 2012)
+
+* Further improvements to `console` method stubbing
+ ([#1206](https://github.com/h5bp/html5-boilerplate/issues/1206),
+ [#1229](https://github.com/h5bp/html5-boilerplate/pull/1229)).
+* Update to jQuery 1.8.2.
+* Update to Modernizr 2.6.2.
+* Minor additions to the documentation.
+
+### 4.0.0 (August 28, 2012)
+
+* Improve the Apache compression configuration
+ ([#1012](https://github.com/h5bp/html5-boilerplate/issues/1012),
+ [#1173](https://github.com/h5bp/html5-boilerplate/issues/1173)).
+* Add a HiDPI example media query
+ ([#1127](https://github.com/h5bp/html5-boilerplate/issues/1127)).
+* Add bundled docs
+ ([#1154](https://github.com/h5bp/html5-boilerplate/issues/1154)).
+* Add MIT license
+ ([#1139](https://github.com/h5bp/html5-boilerplate/issues/1139)).
+* Update to Normalize.css 1.0.1.
+* Separate Normalize.css from the rest of the CSS
+ ([#1160](https://github.com/h5bp/html5-boilerplate/issues/1160)).
+* Improve `console.log` protection
+ ([#1107](https://github.com/h5bp/html5-boilerplate/issues/1107)).
+* Replace hot pink text selection color with a neutral color.
+* Change image replacement technique
+ ([#1149](https://github.com/h5bp/html5-boilerplate/issues/1149)).
+* Code format and consistency changes
+ ([#1112](https://github.com/h5bp/html5-boilerplate/issues/1112)).
+* Rename CSS file and rename JS files and subdirectories.
+* Update to jQuery 1.8
+ ([#1161](https://github.com/h5bp/html5-boilerplate/issues/1161)).
+* Update to Modernizr 2.6.1
+ ([#1086](https://github.com/h5bp/html5-boilerplate/issues/1086)).
+* Remove uncompressed jQuery
+ ([#1153](https://github.com/h5bp/html5-boilerplate/issues/1153)).
+* Remove superfluous inline comments
+ ([#1150](https://github.com/h5bp/html5-boilerplate/issues/1150)).
+
+### 3.0.2 (February 19, 2012)
+
+* Update to Modernizr 2.5.3.
+
+### 3.0.1 (February 08, 2012).
+
+* Update to Modernizr 2.5.2 (includes html5shiv 3.3).
+
+### 3.0.0 (February 06, 2012)
+
+* Improvements to `.htaccess`.
+* Improve 404 design.
+* Simplify JS folder structure.
+* Change `html` IE class names changed to target ranges rather than
+ specific versions of IE.
+* Update CSS to include latest normalize.css changes and better
+ typographic defaults
+ ([#825](https://github.com/h5bp/html5-boilerplate/issues/825)).
+* Update to Modernizr 2.5 (includes yepnope 1.5 and html5shiv 3.2).
+* Update to jQuery 1.7.1.
+* Revert to async snippet for the Google Analytics script.
+* Remove the ant build script
+ ([#826](https://github.com/h5bp/html5-boilerplate/issues/826)).
+* Remove Respond.js
+ ([#816](https://github.com/h5bp/html5-boilerplate/issues/816)).
+* Remove the `demo/` directory
+ ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)).
+* Remove the `test/` directory
+ ([#808](https://github.com/h5bp/html5-boilerplate/issues/808)).
+* Remove Google Chrome Frame script for IE6 users; replace with links
+ to Chrome Frame and options for alternative browsers.
+* Remove `initial-scale=1` from the viewport `meta`
+ ([#824](https://github.com/h5bp/html5-boilerplate/issues/824)).
+* Remove `defer` from all scripts to avoid legacy IE bugs.
+* Remove explicit Site Speed tracking for Google Analytics. It's now
+ enabled by default.
+
+### 2.0.0 (August 10, 2011)
+
+* Change starting CSS to be based on normalize.css instead of reset.css
+ ([#500](https://github.com/h5bp/html5-boilerplate/issues/500)).
+* Add Respond.js media query polyfill.
+* Add Google Chrome Frame script prompt for IE6 users.
+* Simplify the `html` conditional comments for modern browsers and add
+ an `oldie` class.
+* Update clearfix to use "micro clearfix".
+* Add placeholder CSS MQs for mobile-first approach.
+* Add `textarea { resize: vertical; }` to only allow vertical resizing.
+* Add `img { max-width: 100%; }` to the print styles; prevents images
+ being truncated.
+* Add Site Speed tracking for Google Analytics.
+* Update to jQuery 1.6.2 (and use minified by default).
+* Update to Modernizr 2.0 Complete, Production minified (includes
+ yepnope, html5shiv, and Respond.js).
+* Use `Modernizr.load()` to load the Google Analytics script.
+* Much faster build process.
+* Add build script options for CSSLint, JSLint, JSHint tools.
+* Build script now compresses all images in subfolders.
+* Build script now versions files by SHA hash.
+* Many `.htaccess` improvements including: disable directory browsing,
+ improved support for all versions of Apache, more robust and extensive
+ HTTP compression rules.
+* Remove `handheld.css` as it has very poor device support.
+* Remove touch-icon `link` elements from the HTML and include improved
+ touch-icon support.
+* Remove the cache-busting query paramaters from files references in
+ the HTML.
+* Remove IE6 PNGFix.
+
+### 1.0.0 (March 21, 2011)
+
+* Rewrite build script to make it more customizable and flexible.
+* Add a humans.txt.
+* Numerous `.htaccess` improvements (including inline documentation).
+* Move the alternative server configurations to the H5BP server configs
+ repo.
+* Use a protocol-relative url to reference jQuery and prevent mixed
+ content warnings.
+* Optimize the Google Analytics snippet.
+* Use Eric Meyer's recent CSS reset update and the HTML5 Doctor reset.
+* More robust `sub`/`sup` CSS styles.
+* Add keyboard `.focusable` helper class that extends `.visuallyhidden`.
+* Print styles no longer print hash or JavaScript links.
+* Add a print reset for IE's proprietary filters.
+* Remove IE9-specific conditional class on the `html` element.
+* Remove margins from lists within `nav` elements.
+* Remove YUI profiling.
diff --git a/TP1/CONTRIBUTING.md b/TP1/CONTRIBUTING.md
new file mode 100644
index 0000000..2085789
--- /dev/null
+++ b/TP1/CONTRIBUTING.md
@@ -0,0 +1,153 @@
+# Contributing to HTML5 Boilerplate
+
+♥ [HTML5 Boilerplate](https://html5boilerplate.com) and want to get involved?
+Thanks! There are plenty of ways you can help!
+
+Please take a moment to review this document in order to make the contribution
+process easy and effective for everyone involved.
+
+Following these guidelines helps to communicate that you respect the time of
+the developers managing and developing this open source project. In return,
+they should reciprocate that respect in addressing your issue or assessing
+patches and features.
+
+
+## Using the issue tracker
+
+The [issue tracker](https://github.com/h5bp/html5-boilerplate/issues) is
+the preferred channel for [bug reports](#bugs), [features requests](#features)
+and [submitting pull requests](#pull-requests), but please respect the following
+restrictions:
+
+* Please **do not** use the issue tracker for personal support requests (use
+ [Stack Overflow](https://stackoverflow.com/questions/tagged/html5boilerplate)).
+
+* Please **do not** derail or troll issues. Keep the discussion on topic and
+ respect the opinions of others.
+
+* Please **do not** open issues or pull requests regarding the code in
+ [`.htaccess`](https://github.com/h5bp/server-configs-apache),
+ [`jQuery`](https://github.com/jquery/jquery/),
+ [`Modernizr`](https://github.com/Modernizr/Modernizr) or
+ [`Normalize.css`](https://github.com/necolas/normalize.css) (open them in
+ their respective repositories).
+
+
+
+## Bug reports
+
+A bug is a _demonstrable problem_ that is caused by the code in the repository.
+Good bug reports are extremely helpful - thank you!
+
+Guidelines for bug reports:
+
+1. **Use the GitHub issue search** — check if the issue has already been
+ reported.
+
+2. **Check if the issue has been fixed** — try to reproduce it using the
+ latest `master` or development branch in the repository.
+
+3. **Isolate the problem** — ideally create a [reduced test
+ case](https://css-tricks.com/reduced-test-cases/) and a live example.
+
+A good bug report shouldn't leave others needing to chase you up for more
+information. Please try to be as detailed as possible in your report. What is
+your environment? What steps will reproduce the issue? What browser(s) and OS
+experience the problem? What would you expect to be the outcome? All these
+details will help people to fix any potential bugs.
+
+Example:
+
+> Short and descriptive example bug report title
+>
+> A summary of the issue and the browser/OS environment in which it occurs. If
+> suitable, include the steps required to reproduce the bug.
+>
+> 1. This is the first step
+> 2. This is the second step
+> 3. Further steps, etc.
+>
+> `` - a link to the reduced test case
+>
+> Any other information you want to share that is relevant to the issue being
+> reported. This might include the lines of code that you have identified as
+> causing the bug, and potential solutions (and your opinions on their
+> merits).
+
+
+
+## Feature requests
+
+Feature requests are welcome. But take a moment to find out whether your idea
+fits with the scope and aims of the project. It's up to *you* to make a strong
+case to convince the project's developers of the merits of this feature. Please
+provide as much detail and context as possible.
+
+
+
+## Pull requests
+
+Good pull requests - patches, improvements, new features - are a fantastic
+help. They should remain focused in scope and avoid containing unrelated
+commits.
+
+**Please ask first** before embarking on any significant pull request (e.g.
+implementing features, refactoring code, porting to a different language),
+otherwise you risk spending a lot of time working on something that the
+project's developers might not want to merge into the project.
+
+Please adhere to the coding conventions used throughout a project (indentation,
+accurate comments, etc.) and any other requirements (such as test coverage).
+
+Adhering to the following process is the best way to get your work
+included in the project:
+
+1. [Fork](https://help.github.com/articles/fork-a-repo/) the project, clone your
+ fork, and configure the remotes:
+
+ ```bash
+ # Clone your fork of the repo into the current directory
+ git clone https://github.com//html5-boilerplate.git
+ # Navigate to the newly cloned directory
+ cd html5-boilerplate
+ # Assign the original repo to a remote called "upstream"
+ git remote add upstream https://github.com/h5bp/html5-boilerplate.git
+ ```
+
+2. If you cloned a while ago, get the latest changes from upstream:
+
+ ```bash
+ git checkout master
+ git pull upstream master
+ ```
+
+3. Create a new topic branch (off the main project development branch) to
+ contain your feature, change, or fix:
+
+ ```bash
+ git checkout -b
+ ```
+
+4. Commit your changes in logical chunks. Please adhere to these [git commit
+ message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
+ or your code is unlikely be merged into the main project. Use Git's
+ [interactive rebase](https://help.github.com/articles/about-git-rebase/)
+ feature to tidy up your commits before making them public.
+
+5. Locally merge (or rebase) the upstream development branch into your topic branch:
+
+ ```bash
+ git pull [--rebase] upstream master
+ ```
+
+6. Push your topic branch up to your fork:
+
+ ```bash
+ git push origin
+ ```
+
+7. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
+ with a clear title and description.
+
+**IMPORTANT**: By submitting a patch, you agree to allow the project
+owners to license your work under the terms of the [MIT License](LICENSE.txt).
diff --git a/TP1/LICENSE.txt b/TP1/LICENSE.txt
new file mode 100644
index 0000000..294e91d
--- /dev/null
+++ b/TP1/LICENSE.txt
@@ -0,0 +1,19 @@
+Copyright (c) HTML5 Boilerplate
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/TP1/Livre d'or.php b/TP1/Livre d'or.php
new file mode 100644
index 0000000..2cd66be
--- /dev/null
+++ b/TP1/Livre d'or.php
@@ -0,0 +1,41 @@
+
+
+
+
+
+ Livre d'or
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/TP1/README.md b/TP1/README.md
new file mode 100644
index 0000000..06f0dcb
--- /dev/null
+++ b/TP1/README.md
@@ -0,0 +1,93 @@
+# [HTML5 Boilerplate](https://html5boilerplate.com)
+
+[](https://travis-ci.org/h5bp/html5-boilerplate)
+[](https://david-dm.org/h5bp/html5-boilerplate#info=devDependencies)
+
+HTML5 Boilerplate is a professional front-end template for building
+fast, robust, and adaptable web apps or sites.
+
+This project is the product of many years of iterative development and
+combined community knowledge. It does not impose a specific development
+philosophy or framework, so you're free to architect your code in the
+way that you want.
+
+* Homepage: [https://html5boilerplate.com](https://html5boilerplate.com)
+* Source: [https://github.com/h5bp/html5-boilerplate](https://github.com/h5bp/html5-boilerplate)
+* Twitter: [@h5bp](https://twitter.com/h5bp)
+
+
+## Quick start
+
+Choose one of the following options:
+
+1. Download the latest stable release from
+ [html5boilerplate.com](https://html5boilerplate.com/) or create a
+ custom build using [Initializr](http://www.initializr.com).
+2. Clone the git repo — `git clone
+ https://github.com/h5bp/html5-boilerplate.git` - and checkout the
+ [tagged release](https://github.com/h5bp/html5-boilerplate/releases)
+ you'd like to use.
+
+
+## Features
+
+* HTML5 ready. Use the new elements with confidence.
+* Designed with progressive enhancement in mind.
+* Includes:
+ * [`Normalize.css`](https://necolas.github.com/normalize.css/)
+ for CSS normalizations and common bug fixes
+ * [`jQuery`](https://jquery.com/) via CDN, with a local fallback
+ * A custom build of [`Modernizr`](http://modernizr.com/) for feature
+ detection
+ * [`Apache Server Configs`](https://github.com/h5bp/server-configs-apache)
+ that, among other, improve the web site's performance and security
+* Placeholder CSS Media Queries.
+* Useful CSS helper classes.
+* Default print styles, performance optimized.
+* An optimized version of the Google Universal Analytics snippet.
+* Protection against any stray `console` statements causing JavaScript
+ errors in older browsers.
+* "Delete-key friendly." Easy to strip out parts you don't need.
+* Extensive inline and accompanying documentation.
+
+
+## Browser support
+
+* Chrome *(latest 2)*
+* Edge *(latest 2)*
+* Firefox *(latest 2)*
+* Internet Explorer 8+
+* Opera *(latest 2)*
+* Safari *(latest 2)*
+
+*This doesn't mean that HTML5 Boilerplate cannot be used in older browsers,
+just that we'll ensure compatibility with the ones mentioned above.*
+
+If you need legacy browser support (IE 6+, Firefox 3.6+, Safari 4+) you
+can use [HTML5 Boilerplate v4](https://github.com/h5bp/html5-boilerplate/tree/v4),
+but is no longer actively developed.
+
+
+## Documentation
+
+Take a look at the [documentation table of contents](dist/doc/TOC.md).
+This documentation is bundled with the project, which makes it readily
+available for offline reading and provides a useful starting point for
+any documentation you want to write about your project.
+
+
+## Contributing
+
+Hundreds of developers have helped make the HTML5 Boilerplate what it is
+today. Anyone and everyone is welcome to [contribute](CONTRIBUTING.md),
+however, if you decide to get involved, please take a moment to review
+the [guidelines](CONTRIBUTING.md):
+
+* [Bug reports](CONTRIBUTING.md#bugs)
+* [Feature requests](CONTRIBUTING.md#features)
+* [Pull requests](CONTRIBUTING.md#pull-requests)
+
+
+## License
+
+The code is available under the [MIT license](LICENSE.txt).
diff --git a/TP1/TP1.php b/TP1/TP1.php
new file mode 100644
index 0000000..9c00d86
--- /dev/null
+++ b/TP1/TP1.php
@@ -0,0 +1,114 @@
+
+
+
+
+
+
+ TP1 - Etic
+
+
+
+
+
+
+ Dom Cobb est un voleur expérimenté – le meilleur qui soit dans l’art périlleux de l’extraction : sa spécialité consiste à s’approprier les secrets
+ les plus précieux d’un individu, enfouis au plus profond de son subconscient, pendant qu’il rêve et que son esprit est particulièrement vulnérable.
+ Très recherché pour ses talents dans l’univers trouble de l’espionnage industriel, Cobb est aussi devenu un fugitif traqué dans le monde entier
+ qui a perdu tout ce qui lui est cher. Mais une ultime mission pourrait lui permettre de retrouver sa vie d’avant – à condition qu’il puisse
+ accomplir l’impossible : l’inception. Au lieu de subtiliser un rêve, Cobb et son équipe doivent faire l’inverse : implanter une idée dans l’esprit
+ d’un individu. S’ils y parviennent, il pourrait s’agir du crime parfait. Et pourtant, aussi méthodiques et doués soient-ils, rien n’aurait pu
+ préparer Cobb et ses partenaires à un ennemi redoutable qui semble avoir systématiquement un coup d’avance sur eux. Un ennemi dont seul Cobb aurait
+ pu soupçonner l’existence.
+
+
+
+
\ No newline at end of file
diff --git a/TP1/dist/.editorconfig b/TP1/dist/.editorconfig
new file mode 100644
index 0000000..1b44e42
--- /dev/null
+++ b/TP1/dist/.editorconfig
@@ -0,0 +1,13 @@
+# editorconfig.org
+
+root = true
+
+[*]
+charset = utf-8
+indent_size = 4
+indent_style = space
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+[*.md]
+trim_trailing_whitespace = false
diff --git a/TP1/dist/.gitattributes b/TP1/dist/.gitattributes
new file mode 100644
index 0000000..176a458
--- /dev/null
+++ b/TP1/dist/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/TP1/dist/.gitignore b/TP1/dist/.gitignore
new file mode 100644
index 0000000..16b2d7d
--- /dev/null
+++ b/TP1/dist/.gitignore
@@ -0,0 +1,2 @@
+# Include your project-specific ignores in this file
+# Read about how to use .gitignore: https://help.github.com/articles/ignoring-files
diff --git a/TP1/dist/.htaccess b/TP1/dist/.htaccess
new file mode 100644
index 0000000..446a926
--- /dev/null
+++ b/TP1/dist/.htaccess
@@ -0,0 +1,984 @@
+# Apache Server Configs v2.14.0 | MIT License
+# https://github.com/h5bp/server-configs-apache
+
+# (!) Using `.htaccess` files slows down Apache, therefore, if you have
+# access to the main server configuration file (which is usually called
+# `httpd.conf`), you should add this logic there.
+#
+# https://httpd.apache.org/docs/current/howto/htaccess.html.
+
+# ######################################################################
+# # CROSS-ORIGIN #
+# ######################################################################
+
+# ----------------------------------------------------------------------
+# | Cross-origin requests |
+# ----------------------------------------------------------------------
+
+# Allow cross-origin requests.
+#
+# https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS
+# http://enable-cors.org/
+# http://www.w3.org/TR/cors/
+
+#
+# Header set Access-Control-Allow-Origin "*"
+#
+
+# ----------------------------------------------------------------------
+# | Cross-origin images |
+# ----------------------------------------------------------------------
+
+# Send the CORS header for images when browsers request it.
+#
+# https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image
+# https://blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html
+
+
+
+
+ SetEnvIf Origin ":" IS_CORS
+ Header set Access-Control-Allow-Origin "*" env=IS_CORS
+
+
+
+
+# ----------------------------------------------------------------------
+# | Cross-origin web fonts |
+# ----------------------------------------------------------------------
+
+# Allow cross-origin access to web fonts.
+
+
+
+ Header set Access-Control-Allow-Origin "*"
+
+
+
+# ----------------------------------------------------------------------
+# | Cross-origin resource timing |
+# ----------------------------------------------------------------------
+
+# Allow cross-origin access to the timing information for all resources.
+#
+# If a resource isn't served with a `Timing-Allow-Origin` header that
+# would allow its timing information to be shared with the document,
+# some of the attributes of the `PerformanceResourceTiming` object will
+# be set to zero.
+#
+# http://www.w3.org/TR/resource-timing/
+# http://www.stevesouders.com/blog/2014/08/21/resource-timing-practical-tips/
+
+#
+# Header set Timing-Allow-Origin: "*"
+#
+
+
+# ######################################################################
+# # ERRORS #
+# ######################################################################
+
+# ----------------------------------------------------------------------
+# | Custom error messages/pages |
+# ----------------------------------------------------------------------
+
+# Customize what Apache returns to the client in case of an error.
+# https://httpd.apache.org/docs/current/mod/core.html#errordocument
+
+ErrorDocument 404 /404.html
+
+# ----------------------------------------------------------------------
+# | Error prevention |
+# ----------------------------------------------------------------------
+
+# Disable the pattern matching based on filenames.
+#
+# This setting prevents Apache from returning a 404 error as the result
+# of a rewrite when the directory with the same name does not exist.
+#
+# https://httpd.apache.org/docs/current/content-negotiation.html#multiviews
+
+Options -MultiViews
+
+
+# ######################################################################
+# # INTERNET EXPLORER #
+# ######################################################################
+
+# ----------------------------------------------------------------------
+# | Document modes |
+# ----------------------------------------------------------------------
+
+# Force Internet Explorer 8/9/10 to render pages in the highest mode
+# available in the various cases when it may not.
+#
+# https://hsivonen.fi/doctype/#ie8
+#
+# (!) Starting with Internet Explorer 11, document modes are deprecated.
+# If your business still relies on older web apps and services that were
+# designed for older versions of Internet Explorer, you might want to
+# consider enabling `Enterprise Mode` throughout your company.
+#
+# https://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode
+# http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx
+
+
+
+ Header set X-UA-Compatible "IE=edge"
+
+ # `mod_headers` cannot match based on the content-type, however,
+ # the `X-UA-Compatible` response header should be send only for
+ # HTML documents and not for the other resources.
+
+
+ Header unset X-UA-Compatible
+
+
+
+
+# ----------------------------------------------------------------------
+# | Iframes cookies |
+# ----------------------------------------------------------------------
+
+# Allow cookies to be set from iframes in Internet Explorer.
+#
+# https://msdn.microsoft.com/en-us/library/ms537343.aspx
+# http://www.w3.org/TR/2000/CR-P3P-20001215/
+
+#
+# Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\""
+#
+
+
+# ######################################################################
+# # MEDIA TYPES AND CHARACTER ENCODINGS #
+# ######################################################################
+
+# ----------------------------------------------------------------------
+# | Media types |
+# ----------------------------------------------------------------------
+
+# Serve resources with the proper media types (f.k.a. MIME types).
+#
+# https://www.iana.org/assignments/media-types/media-types.xhtml
+# https://httpd.apache.org/docs/current/mod/mod_mime.html#addtype
+
+
+
+ # Data interchange
+
+ AddType application/atom+xml atom
+ AddType application/json json map topojson
+ AddType application/ld+json jsonld
+ AddType application/rss+xml rss
+ AddType application/vnd.geo+json geojson
+ AddType application/xml rdf xml
+
+
+ # JavaScript
+
+ # Normalize to standard type.
+ # https://tools.ietf.org/html/rfc4329#section-7.2
+
+ AddType application/javascript js
+
+
+ # Manifest files
+
+ AddType application/manifest+json webmanifest
+ AddType application/x-web-app-manifest+json webapp
+ AddType text/cache-manifest appcache
+
+
+ # Media files
+
+ AddType audio/mp4 f4a f4b m4a
+ AddType audio/ogg oga ogg opus
+ AddType image/bmp bmp
+ AddType image/svg+xml svg svgz
+ AddType image/webp webp
+ AddType video/mp4 f4v f4p m4v mp4
+ AddType video/ogg ogv
+ AddType video/webm webm
+ AddType video/x-flv flv
+
+ # Serving `.ico` image files with a different media type
+ # prevents Internet Explorer from displaying then as images:
+ # https://github.com/h5bp/html5-boilerplate/commit/37b5fec090d00f38de64b591bcddcb205aadf8ee
+
+ AddType image/x-icon cur ico
+
+
+ # Web fonts
+
+ AddType application/font-woff woff
+ AddType application/font-woff2 woff2
+ AddType application/vnd.ms-fontobject eot
+
+ # Browsers usually ignore the font media types and simply sniff
+ # the bytes to figure out the font type.
+ # https://mimesniff.spec.whatwg.org/#matching-a-font-type-pattern
+ #
+ # However, Blink and WebKit based browsers will show a warning
+ # in the console if the following font types are served with any
+ # other media types.
+
+ AddType application/x-font-ttf ttc ttf
+ AddType font/opentype otf
+
+
+ # Other
+
+ AddType application/octet-stream safariextz
+ AddType application/x-bb-appworld bbaw
+ AddType application/x-chrome-extension crx
+ AddType application/x-opera-extension oex
+ AddType application/x-xpinstall xpi
+ AddType text/vcard vcard vcf
+ AddType text/vnd.rim.location.xloc xloc
+ AddType text/vtt vtt
+ AddType text/x-component htc
+
+
+
+# ----------------------------------------------------------------------
+# | Character encodings |
+# ----------------------------------------------------------------------
+
+# Serve all resources labeled as `text/html` or `text/plain`
+# with the media type `charset` parameter set to `UTF-8`.
+#
+# https://httpd.apache.org/docs/current/mod/core.html#adddefaultcharset
+
+AddDefaultCharset utf-8
+
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+# Serve the following file types with the media type `charset`
+# parameter set to `UTF-8`.
+#
+# https://httpd.apache.org/docs/current/mod/mod_mime.html#addcharset
+
+
+ AddCharset utf-8 .atom \
+ .bbaw \
+ .css \
+ .geojson \
+ .js \
+ .json \
+ .jsonld \
+ .manifest \
+ .rdf \
+ .rss \
+ .topojson \
+ .vtt \
+ .webapp \
+ .webmanifest \
+ .xloc \
+ .xml
+
+
+
+# ######################################################################
+# # REWRITES #
+# ######################################################################
+
+# ----------------------------------------------------------------------
+# | Rewrite engine |
+# ----------------------------------------------------------------------
+
+# (1) Turn on the rewrite engine (this is necessary in order for
+# the `RewriteRule` directives to work).
+#
+# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#RewriteEngine
+#
+# (2) Enable the `FollowSymLinks` option if it isn't already.
+#
+# https://httpd.apache.org/docs/current/mod/core.html#options
+#
+# (3) If your web host doesn't allow the `FollowSymlinks` option,
+# you need to comment it out or remove it, and then uncomment
+# the `Options +SymLinksIfOwnerMatch` line (4), but be aware
+# of the performance impact.
+#
+# https://httpd.apache.org/docs/current/misc/perf-tuning.html#symlinks
+#
+# (4) Some cloud hosting services will require you set `RewriteBase`.
+#
+# https://www.rackspace.com/knowledge_center/frequently-asked-question/why-is-modrewrite-not-working-on-my-site
+# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase
+#
+# (5) Depending on how your server is set up, you may also need to
+# use the `RewriteOptions` directive to enable some options for
+# the rewrite engine.
+#
+# https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriteoptions
+#
+# (6) Set %{ENV:PROTO} variable, to allow rewrites to redirect with the
+# appropriate schema automatically (http or https).
+
+
+
+ # (1)
+ RewriteEngine On
+
+ # (2)
+ Options +FollowSymlinks
+
+ # (3)
+ # Options +SymLinksIfOwnerMatch
+
+ # (4)
+ # RewriteBase /
+
+ # (5)
+ # RewriteOptions
+
+ # (6)
+ RewriteCond %{HTTPS} =on
+ RewriteRule ^ - [env=proto:https]
+ RewriteCond %{HTTPS} !=on
+ RewriteRule ^ - [env=proto:http]
+
+
+
+# ----------------------------------------------------------------------
+# | Forcing `https://` |
+# ----------------------------------------------------------------------
+
+# Redirect from the `http://` to the `https://` version of the URL.
+# https://wiki.apache.org/httpd/RewriteHTTPToHTTPS
+
+#
+# RewriteEngine On
+# RewriteCond %{HTTPS} !=on
+# RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
+#
+
+# ----------------------------------------------------------------------
+# | Suppressing / Forcing the `www.` at the beginning of URLs |
+# ----------------------------------------------------------------------
+
+# The same content should never be available under two different
+# URLs, especially not with and without `www.` at the beginning.
+# This can cause SEO problems (duplicate content), and therefore,
+# you should choose one of the alternatives and redirect the other
+# one.
+#
+# By default `Option 1` (no `www.`) is activated.
+# http://no-www.org/faq.php?q=class_b
+#
+# If you would prefer to use `Option 2`, just comment out all the
+# lines from `Option 1` and uncomment the ones from `Option 2`.
+#
+# (!) NEVER USE BOTH RULES AT THE SAME TIME!
+
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+# Option 1: rewrite www.example.com → example.com
+
+
+ RewriteEngine On
+ RewriteCond %{HTTPS} !=on
+ RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
+ RewriteRule ^ %{ENV:PROTO}://%1%{REQUEST_URI} [R=301,L]
+
+
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+# Option 2: rewrite example.com → www.example.com
+#
+# Be aware that the following might not be a good idea if you use "real"
+# subdomains for certain parts of your website.
+
+#
+# RewriteEngine On
+# RewriteCond %{HTTPS} !=on
+# RewriteCond %{HTTP_HOST} !^www\. [NC]
+# RewriteCond %{SERVER_ADDR} !=127.0.0.1
+# RewriteCond %{SERVER_ADDR} !=::1
+# RewriteRule ^ %{ENV:PROTO}://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
+#
+
+
+# ######################################################################
+# # SECURITY #
+# ######################################################################
+
+# ----------------------------------------------------------------------
+# | Clickjacking |
+# ----------------------------------------------------------------------
+
+# Protect website against clickjacking.
+#
+# The example below sends the `X-Frame-Options` response header with
+# the value `DENY`, informing browsers not to display the content of
+# the web page in any frame.
+#
+# This might not be the best setting for everyone. You should read
+# about the other two possible values the `X-Frame-Options` header
+# field can have: `SAMEORIGIN` and `ALLOW-FROM`.
+# https://tools.ietf.org/html/rfc7034#section-2.1.
+#
+# Keep in mind that while you could send the `X-Frame-Options` header
+# for all of your website’s pages, this has the potential downside that
+# it forbids even non-malicious framing of your content (e.g.: when
+# users visit your website using a Google Image Search results page).
+#
+# Nonetheless, you should ensure that you send the `X-Frame-Options`
+# header for all pages that allow a user to make a state changing
+# operation (e.g: pages that contain one-click purchase links, checkout
+# or bank-transfer confirmation pages, pages that make permanent
+# configuration changes, etc.).
+#
+# Sending the `X-Frame-Options` header can also protect your website
+# against more than just clickjacking attacks:
+# https://cure53.de/xfo-clickjacking.pdf.
+#
+# https://tools.ietf.org/html/rfc7034
+# http://blogs.msdn.com/b/ieinternals/archive/2010/03/30/combating-clickjacking-with-x-frame-options.aspx
+# https://www.owasp.org/index.php/Clickjacking
+
+#
+
+# Header set X-Frame-Options "DENY"
+
+# # `mod_headers` cannot match based on the content-type, however,
+# # the `X-Frame-Options` response header should be send only for
+# # HTML documents and not for the other resources.
+
+#
+# Header unset X-Frame-Options
+#
+
+#
+
+# ----------------------------------------------------------------------
+# | Content Security Policy (CSP) |
+# ----------------------------------------------------------------------
+
+# Mitigate the risk of cross-site scripting and other content-injection
+# attacks.
+#
+# This can be done by setting a `Content Security Policy` which
+# whitelists trusted sources of content for your website.
+#
+# The example header below allows ONLY scripts that are loaded from
+# the current website's origin (no inline scripts, no CDN, etc).
+# That almost certainly won't work as-is for your website!
+#
+# To make things easier, you can use an online CSP header generator
+# such as: http://cspisawesome.com/.
+#
+# http://content-security-policy.com/
+# http://www.html5rocks.com/en/tutorials/security/content-security-policy/
+# http://www.w3.org/TR/CSP11/).
+
+#
+
+# Header set Content-Security-Policy "script-src 'self'; object-src 'self'"
+
+# # `mod_headers` cannot match based on the content-type, however,
+# # the `Content-Security-Policy` response header should be send
+# # only for HTML documents and not for the other resources.
+
+#
+# Header unset Content-Security-Policy
+#
+
+#
+
+# ----------------------------------------------------------------------
+# | File access |
+# ----------------------------------------------------------------------
+
+# Block access to directories without a default document.
+#
+# You should leave the following uncommented, as you shouldn't allow
+# anyone to surf through every directory on your server (which may
+# includes rather private places such as the CMS's directories).
+
+
+ Options -Indexes
+
+
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+# Block access to all hidden files and directories with the exception of
+# the visible content from within the `/.well-known/` hidden directory.
+#
+# These types of files usually contain user preferences or the preserved
+# state of an utility, and can include rather private places like, for
+# example, the `.git` or `.svn` directories.
+#
+# The `/.well-known/` directory represents the standard (RFC 5785) path
+# prefix for "well-known locations" (e.g.: `/.well-known/manifest.json`,
+# `/.well-known/keybase.txt`), and therefore, access to its visible
+# content should not be blocked.
+#
+# https://www.mnot.net/blog/2010/04/07/well-known
+# https://tools.ietf.org/html/rfc5785
+
+
+ RewriteEngine On
+ RewriteCond %{REQUEST_URI} "!(^|/)\.well-known/([^./]+./?)+$" [NC]
+ RewriteCond %{SCRIPT_FILENAME} -d [OR]
+ RewriteCond %{SCRIPT_FILENAME} -f
+ RewriteRule "(^|/)\." - [F]
+
+
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+# Block access to files that can expose sensitive information.
+#
+# By default, block access to backup and source files that may be
+# left by some text editors and can pose a security risk when anyone
+# has access to them.
+#
+# http://feross.org/cmsploit/
+#
+# (!) Update the `` regular expression from below to
+# include any files that might end up on your production server and
+# can expose sensitive information about your website. These files may
+# include: configuration files, files that contain metadata about the
+# project (e.g.: project dependencies), build scripts, etc..
+
+
+
+ # Apache < 2.3
+
+ Order allow,deny
+ Deny from all
+ Satisfy All
+
+
+ # Apache ≥ 2.3
+
+ Require all denied
+
+
+
+
+# ----------------------------------------------------------------------
+# | HTTP Strict Transport Security (HSTS) |
+# ----------------------------------------------------------------------
+
+# Force client-side SSL redirection.
+#
+# If a user types `example.com` in their browser, even if the server
+# redirects them to the secure version of the website, that still leaves
+# a window of opportunity (the initial HTTP connection) for an attacker
+# to downgrade or redirect the request.
+#
+# The following header ensures that browser will ONLY connect to your
+# server via HTTPS, regardless of what the users type in the browser's
+# address bar.
+#
+# (!) Remove the `includeSubDomains` optional directive if the website's
+# subdomains are not using HTTPS.
+#
+# http://www.html5rocks.com/en/tutorials/security/transport-layer-security/
+# https://tools.ietf.org/html/draft-ietf-websec-strict-transport-sec-14#section-6.1
+# http://blogs.msdn.com/b/ieinternals/archive/2014/08/18/hsts-strict-transport-security-attacks-mitigations-deployment-https.aspx
+
+#
+# Header always set Strict-Transport-Security "max-age=16070400; includeSubDomains"
+#
+
+# ----------------------------------------------------------------------
+# | Reducing MIME type security risks |
+# ----------------------------------------------------------------------
+
+# Prevent some browsers from MIME-sniffing the response.
+#
+# This reduces exposure to drive-by download attacks and cross-origin
+# data leaks, and should be left uncommented, especially if the server
+# is serving user-uploaded content or content that could potentially be
+# treated as executable by the browser.
+#
+# http://www.slideshare.net/hasegawayosuke/owasp-hasegawa
+# http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-v-comprehensive-protection.aspx
+# https://msdn.microsoft.com/en-us/library/ie/gg622941.aspx
+# https://mimesniff.spec.whatwg.org/
+
+
+ Header set X-Content-Type-Options "nosniff"
+
+
+# ----------------------------------------------------------------------
+# | Reflected Cross-Site Scripting (XSS) attacks |
+# ----------------------------------------------------------------------
+
+# (1) Try to re-enable the cross-site scripting (XSS) filter built
+# into most web browsers.
+#
+# The filter is usually enabled by default, but in some cases it
+# may be disabled by the user. However, in Internet Explorer for
+# example, it can be re-enabled just by sending the
+# `X-XSS-Protection` header with the value of `1`.
+#
+# (2) Prevent web browsers from rendering the web page if a potential
+# reflected (a.k.a non-persistent) XSS attack is detected by the
+# filter.
+#
+# By default, if the filter is enabled and browsers detect a
+# reflected XSS attack, they will attempt to block the attack
+# by making the smallest possible modifications to the returned
+# web page.
+#
+# Unfortunately, in some browsers (e.g.: Internet Explorer),
+# this default behavior may allow the XSS filter to be exploited,
+# thereby, it's better to inform browsers to prevent the rendering
+# of the page altogether, instead of attempting to modify it.
+#
+# https://hackademix.net/2009/11/21/ies-xss-filter-creates-xss-vulnerabilities
+#
+# (!) Do not rely on the XSS filter to prevent XSS attacks! Ensure that
+# you are taking all possible measures to prevent XSS attacks, the
+# most obvious being: validating and sanitizing your website's inputs.
+#
+# http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-iv-the-xss-filter.aspx
+# http://blogs.msdn.com/b/ieinternals/archive/2011/01/31/controlling-the-internet-explorer-xss-filter-with-the-x-xss-protection-http-header.aspx
+# https://www.owasp.org/index.php/Cross-site_Scripting_%28XSS%29
+
+#
+
+# # (1) (2)
+# Header set X-XSS-Protection "1; mode=block"
+
+# # `mod_headers` cannot match based on the content-type, however,
+# # the `X-XSS-Protection` response header should be send only for
+# # HTML documents and not for the other resources.
+
+#
+# Header unset X-XSS-Protection
+#
+
+#
+
+# ----------------------------------------------------------------------
+# | Server-side technology information |
+# ----------------------------------------------------------------------
+
+# Remove the `X-Powered-By` response header that:
+#
+# * is set by some frameworks and server-side languages
+# (e.g.: ASP.NET, PHP), and its value contains information
+# about them (e.g.: their name, version number)
+#
+# * doesn't provide any value as far as users are concern,
+# and in some cases, the information provided by it can
+# be used by attackers
+#
+# (!) If you can, you should disable the `X-Powered-By` header from the
+# language / framework level (e.g.: for PHP, you can do that by setting
+# `expose_php = off` in `php.ini`)
+#
+# https://php.net/manual/en/ini.core.php#ini.expose-php
+
+
+ Header unset X-Powered-By
+
+
+# ----------------------------------------------------------------------
+# | Server software information |
+# ----------------------------------------------------------------------
+
+# Prevent Apache from adding a trailing footer line containing
+# information about the server to the server-generated documents
+# (e.g.: error messages, directory listings, etc.)
+#
+# https://httpd.apache.org/docs/current/mod/core.html#serversignature
+
+ServerSignature Off
+
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+# Prevent Apache from sending in the `Server` response header its
+# exact version number, the description of the generic OS-type or
+# information about its compiled-in modules.
+#
+# (!) The `ServerTokens` directive will only work in the main server
+# configuration file, so don't try to enable it in the `.htaccess` file!
+#
+# https://httpd.apache.org/docs/current/mod/core.html#servertokens
+
+#ServerTokens Prod
+
+
+# ######################################################################
+# # WEB PERFORMANCE #
+# ######################################################################
+
+# ----------------------------------------------------------------------
+# | Compression |
+# ----------------------------------------------------------------------
+
+
+
+ # Force compression for mangled `Accept-Encoding` request headers
+ # https://developer.yahoo.com/blogs/ydn/pushing-beyond-gzipping-25601.html
+
+
+
+ SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
+ RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
+
+
+
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+ # Compress all output labeled with one of the following media types.
+ #
+ # (!) For Apache versions below version 2.3.7 you don't need to
+ # enable `mod_filter` and can remove the ``
+ # and `` lines as `AddOutputFilterByType` is still in
+ # the core directives.
+ #
+ # https://httpd.apache.org/docs/current/mod/mod_filter.html#addoutputfilterbytype
+
+
+ AddOutputFilterByType DEFLATE "application/atom+xml" \
+ "application/javascript" \
+ "application/json" \
+ "application/ld+json" \
+ "application/manifest+json" \
+ "application/rdf+xml" \
+ "application/rss+xml" \
+ "application/schema+json" \
+ "application/vnd.geo+json" \
+ "application/vnd.ms-fontobject" \
+ "application/x-font-ttf" \
+ "application/x-javascript" \
+ "application/x-web-app-manifest+json" \
+ "application/xhtml+xml" \
+ "application/xml" \
+ "font/eot" \
+ "font/opentype" \
+ "image/bmp" \
+ "image/svg+xml" \
+ "image/vnd.microsoft.icon" \
+ "image/x-icon" \
+ "text/cache-manifest" \
+ "text/css" \
+ "text/html" \
+ "text/javascript" \
+ "text/plain" \
+ "text/vcard" \
+ "text/vnd.rim.location.xloc" \
+ "text/vtt" \
+ "text/x-component" \
+ "text/x-cross-domain-policy" \
+ "text/xml"
+
+
+
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+ # Map the following filename extensions to the specified
+ # encoding type in order to make Apache serve the file types
+ # with the appropriate `Content-Encoding` response header
+ # (do note that this will NOT make Apache compress them!).
+ #
+ # If these files types would be served without an appropriate
+ # `Content-Enable` response header, client applications (e.g.:
+ # browsers) wouldn't know that they first need to uncompress
+ # the response, and thus, wouldn't be able to understand the
+ # content.
+ #
+ # https://httpd.apache.org/docs/current/mod/mod_mime.html#addencoding
+
+
+ AddEncoding gzip svgz
+
+
+
+
+# ----------------------------------------------------------------------
+# | Content transformation |
+# ----------------------------------------------------------------------
+
+# Prevent intermediate caches or proxies (e.g.: such as the ones
+# used by mobile network providers) from modifying the website's
+# content.
+#
+# https://tools.ietf.org/html/rfc2616#section-14.9.5
+#
+# (!) If you are using `mod_pagespeed`, please note that setting
+# the `Cache-Control: no-transform` response header will prevent
+# `PageSpeed` from rewriting `HTML` files, and, if the
+# `ModPagespeedDisableRewriteOnNoTransform` directive isn't set
+# to `off`, also from rewriting other resources.
+#
+# https://developers.google.com/speed/pagespeed/module/configuration#notransform
+
+#
+# Header merge Cache-Control "no-transform"
+#
+
+# ----------------------------------------------------------------------
+# | ETags |
+# ----------------------------------------------------------------------
+
+# Remove `ETags` as resources are sent with far-future expires headers.
+#
+# https://developer.yahoo.com/performance/rules.html#etags
+# https://tools.ietf.org/html/rfc7232#section-2.3
+
+# `FileETag None` doesn't work in all cases.
+
+ Header unset ETag
+
+
+FileETag None
+
+# ----------------------------------------------------------------------
+# | Expires headers |
+# ----------------------------------------------------------------------
+
+# Serve resources with far-future expires headers.
+#
+# (!) If you don't control versioning with filename-based
+# cache busting, you should consider lowering the cache times
+# to something like one week.
+#
+# https://httpd.apache.org/docs/current/mod/mod_expires.html
+
+
+
+ ExpiresActive on
+ ExpiresDefault "access plus 1 month"
+
+ # CSS
+
+ ExpiresByType text/css "access plus 1 year"
+
+
+ # Data interchange
+
+ ExpiresByType application/atom+xml "access plus 1 hour"
+ ExpiresByType application/rdf+xml "access plus 1 hour"
+ ExpiresByType application/rss+xml "access plus 1 hour"
+
+ ExpiresByType application/json "access plus 0 seconds"
+ ExpiresByType application/ld+json "access plus 0 seconds"
+ ExpiresByType application/schema+json "access plus 0 seconds"
+ ExpiresByType application/vnd.geo+json "access plus 0 seconds"
+ ExpiresByType application/xml "access plus 0 seconds"
+ ExpiresByType text/xml "access plus 0 seconds"
+
+
+ # Favicon (cannot be renamed!) and cursor images
+
+ ExpiresByType image/vnd.microsoft.icon "access plus 1 week"
+ ExpiresByType image/x-icon "access plus 1 week"
+
+ # HTML
+
+ ExpiresByType text/html "access plus 0 seconds"
+
+
+ # JavaScript
+
+ ExpiresByType application/javascript "access plus 1 year"
+ ExpiresByType application/x-javascript "access plus 1 year"
+ ExpiresByType text/javascript "access plus 1 year"
+
+
+ # Manifest files
+
+ ExpiresByType application/manifest+json "access plus 1 week"
+ ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds"
+ ExpiresByType text/cache-manifest "access plus 0 seconds"
+
+
+ # Media files
+
+ ExpiresByType audio/ogg "access plus 1 month"
+ ExpiresByType image/bmp "access plus 1 month"
+ ExpiresByType image/gif "access plus 1 month"
+ ExpiresByType image/jpeg "access plus 1 month"
+ ExpiresByType image/png "access plus 1 month"
+ ExpiresByType image/svg+xml "access plus 1 month"
+ ExpiresByType image/webp "access plus 1 month"
+ ExpiresByType video/mp4 "access plus 1 month"
+ ExpiresByType video/ogg "access plus 1 month"
+ ExpiresByType video/webm "access plus 1 month"
+
+
+ # Web fonts
+
+ # Embedded OpenType (EOT)
+ ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
+ ExpiresByType font/eot "access plus 1 month"
+
+ # OpenType
+ ExpiresByType font/opentype "access plus 1 month"
+
+ # TrueType
+ ExpiresByType application/x-font-ttf "access plus 1 month"
+
+ # Web Open Font Format (WOFF) 1.0
+ ExpiresByType application/font-woff "access plus 1 month"
+ ExpiresByType application/x-font-woff "access plus 1 month"
+ ExpiresByType font/woff "access plus 1 month"
+
+ # Web Open Font Format (WOFF) 2.0
+ ExpiresByType application/font-woff2 "access plus 1 month"
+
+
+ # Other
+
+ ExpiresByType text/x-cross-domain-policy "access plus 1 week"
+
+
+
+# ----------------------------------------------------------------------
+# | File concatenation |
+# ----------------------------------------------------------------------
+
+# Allow concatenation from within specific files.
+#
+# e.g.:
+#
+# If you have the following lines in a file called, for
+# example, `main.combined.js`:
+#
+#
+#
+#
+# Apache will replace those lines with the content of the
+# specified files.
+
+#
+#
+# Options +Includes
+# AddOutputFilterByType INCLUDES application/javascript \
+# application/x-javascript \
+# text/javascript
+# SetOutputFilter INCLUDES
+#
+#
+# Options +Includes
+# AddOutputFilterByType INCLUDES text/css
+# SetOutputFilter INCLUDES
+#
+#
+
+# ----------------------------------------------------------------------
+# | Filename-based cache busting |
+# ----------------------------------------------------------------------
+
+# If you're not using a build process to manage your filename version
+# revving, you might want to consider enabling the following directives
+# to route all requests such as `/style.12345.css` to `/style.css`.
+#
+# To understand why this is important and even a better solution than
+# using something like `*.css?v231`, please see:
+# http://www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring/
+
+#
+# RewriteEngine On
+# RewriteCond %{REQUEST_FILENAME} !-f
+# RewriteRule ^(.+)\.(\d+)\.(bmp|css|cur|gif|ico|jpe?g|js|png|svgz?|webp|webmanifest)$ $1.$3 [L]
+#
diff --git a/TP1/dist/404.html b/TP1/dist/404.html
new file mode 100644
index 0000000..8d7925a
--- /dev/null
+++ b/TP1/dist/404.html
@@ -0,0 +1,60 @@
+
+
+
+
+ Page Not Found
+
+
+
+
+
Page Not Found
+
Sorry, but the page you were trying to view does not exist.
+
+
+
diff --git a/TP1/dist/LICENSE.txt b/TP1/dist/LICENSE.txt
new file mode 100644
index 0000000..294e91d
--- /dev/null
+++ b/TP1/dist/LICENSE.txt
@@ -0,0 +1,19 @@
+Copyright (c) HTML5 Boilerplate
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/TP1/dist/apple-touch-icon.png b/TP1/dist/apple-touch-icon.png
new file mode 100644
index 0000000..600738f
Binary files /dev/null and b/TP1/dist/apple-touch-icon.png differ
diff --git a/TP1/dist/browserconfig.xml b/TP1/dist/browserconfig.xml
new file mode 100644
index 0000000..219b759
--- /dev/null
+++ b/TP1/dist/browserconfig.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/TP1/dist/crossdomain.xml b/TP1/dist/crossdomain.xml
new file mode 100644
index 0000000..818b822
--- /dev/null
+++ b/TP1/dist/crossdomain.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/TP1/dist/css/main.css b/TP1/dist/css/main.css
new file mode 100644
index 0000000..ebd0ebd
--- /dev/null
+++ b/TP1/dist/css/main.css
@@ -0,0 +1,282 @@
+/*! HTML5 Boilerplate v5.3.0 | MIT License | https://html5boilerplate.com/ */
+
+/*
+ * What follows is the result of much research on cross-browser styling.
+ * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
+ * Kroc Camen, and the H5BP dev community and team.
+ */
+
+/* ==========================================================================
+ Base styles: opinionated defaults
+ ========================================================================== */
+
+html {
+ color: #222;
+ font-size: 1em;
+ line-height: 1.4;
+}
+
+/*
+ * Remove text-shadow in selection highlight:
+ * https://twitter.com/miketaylr/status/12228805301
+ *
+ * These selection rule sets have to be separate.
+ * Customize the background color to match your design.
+ */
+
+::-moz-selection {
+ background: #b3d4fc;
+ text-shadow: none;
+}
+
+::selection {
+ background: #b3d4fc;
+ text-shadow: none;
+}
+
+/*
+ * A better looking default horizontal rule
+ */
+
+hr {
+ display: block;
+ height: 1px;
+ border: 0;
+ border-top: 1px solid #ccc;
+ margin: 1em 0;
+ padding: 0;
+}
+
+/*
+ * Remove the gap between audio, canvas, iframes,
+ * images, videos and the bottom of their containers:
+ * https://github.com/h5bp/html5-boilerplate/issues/440
+ */
+
+audio,
+canvas,
+iframe,
+img,
+svg,
+video {
+ vertical-align: middle;
+}
+
+/*
+ * Remove default fieldset styles.
+ */
+
+fieldset {
+ border: 0;
+ margin: 0;
+ padding: 0;
+}
+
+/*
+ * Allow only vertical resizing of textareas.
+ */
+
+textarea {
+ resize: vertical;
+}
+
+/* ==========================================================================
+ Browser Upgrade Prompt
+ ========================================================================== */
+
+.browserupgrade {
+ margin: 0.2em 0;
+ background: #ccc;
+ color: #000;
+ padding: 0.2em 0;
+}
+
+/* ==========================================================================
+ Author's custom styles
+ ========================================================================== */
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/* ==========================================================================
+ Helper classes
+ ========================================================================== */
+
+/*
+ * Hide visually and from screen readers
+ */
+
+.hidden {
+ display: none !important;
+}
+
+/*
+ * Hide only visually, but have it available for screen readers:
+ * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
+ */
+
+.visuallyhidden {
+ border: 0;
+ clip: rect(0 0 0 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px;
+}
+
+/*
+ * Extends the .visuallyhidden class to allow the element
+ * to be focusable when navigated to via the keyboard:
+ * https://www.drupal.org/node/897638
+ */
+
+.visuallyhidden.focusable:active,
+.visuallyhidden.focusable:focus {
+ clip: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ position: static;
+ width: auto;
+}
+
+/*
+ * Hide visually and from screen readers, but maintain layout
+ */
+
+.invisible {
+ visibility: hidden;
+}
+
+/*
+ * Clearfix: contain floats
+ *
+ * For modern browsers
+ * 1. The space content is one way to avoid an Opera bug when the
+ * `contenteditable` attribute is included anywhere else in the document.
+ * Otherwise it causes space to appear at the top and bottom of elements
+ * that receive the `clearfix` class.
+ * 2. The use of `table` rather than `block` is only necessary if using
+ * `:before` to contain the top-margins of child elements.
+ */
+
+.clearfix:before,
+.clearfix:after {
+ content: " "; /* 1 */
+ display: table; /* 2 */
+}
+
+.clearfix:after {
+ clear: both;
+}
+
+/* ==========================================================================
+ EXAMPLE Media Queries for Responsive Design.
+ These examples override the primary ('mobile first') styles.
+ Modify as content requires.
+ ========================================================================== */
+
+@media only screen and (min-width: 35em) {
+ /* Style adjustments for viewports that meet the condition */
+}
+
+@media print,
+ (-webkit-min-device-pixel-ratio: 1.25),
+ (min-resolution: 1.25dppx),
+ (min-resolution: 120dpi) {
+ /* Style adjustments for high resolution devices */
+}
+
+/* ==========================================================================
+ Print styles.
+ Inlined to avoid the additional HTTP request:
+ http://www.phpied.com/delay-loading-your-print-css/
+ ========================================================================== */
+
+@media print {
+ *,
+ *:before,
+ *:after,
+ *:first-letter,
+ *:first-line {
+ background: transparent !important;
+ color: #000 !important; /* Black prints faster:
+ http://www.sanbeiji.com/archives/953 */
+ box-shadow: none !important;
+ text-shadow: none !important;
+ }
+
+ a,
+ a:visited {
+ text-decoration: underline;
+ }
+
+ a[href]:after {
+ content: " (" attr(href) ")";
+ }
+
+ abbr[title]:after {
+ content: " (" attr(title) ")";
+ }
+
+ /*
+ * Don't show links that are fragment identifiers,
+ * or use the `javascript:` pseudo protocol
+ */
+
+ a[href^="#"]:after,
+ a[href^="javascript:"]:after {
+ content: "";
+ }
+
+ pre,
+ blockquote {
+ border: 1px solid #999;
+ page-break-inside: avoid;
+ }
+
+ /*
+ * Printing Tables:
+ * http://css-discuss.incutio.com/wiki/Printing_Tables
+ */
+
+ thead {
+ display: table-header-group;
+ }
+
+ tr,
+ img {
+ page-break-inside: avoid;
+ }
+
+ img {
+ max-width: 100% !important;
+ }
+
+ p,
+ h2,
+ h3 {
+ orphans: 3;
+ widows: 3;
+ }
+
+ h2,
+ h3 {
+ page-break-after: avoid;
+ }
+}
diff --git a/TP1/dist/css/normalize.css b/TP1/dist/css/normalize.css
new file mode 100644
index 0000000..5e5e3c8
--- /dev/null
+++ b/TP1/dist/css/normalize.css
@@ -0,0 +1,424 @@
+/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
+
+/**
+ * 1. Set default font family to sans-serif.
+ * 2. Prevent iOS and IE text size adjust after device orientation change,
+ * without disabling user zoom.
+ */
+
+html {
+ font-family: sans-serif; /* 1 */
+ -ms-text-size-adjust: 100%; /* 2 */
+ -webkit-text-size-adjust: 100%; /* 2 */
+}
+
+/**
+ * Remove default margin.
+ */
+
+body {
+ margin: 0;
+}
+
+/* HTML5 display definitions
+ ========================================================================== */
+
+/**
+ * Correct `block` display not defined for any HTML5 element in IE 8/9.
+ * Correct `block` display not defined for `details` or `summary` in IE 10/11
+ * and Firefox.
+ * Correct `block` display not defined for `main` in IE 11.
+ */
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+main,
+menu,
+nav,
+section,
+summary {
+ display: block;
+}
+
+/**
+ * 1. Correct `inline-block` display not defined in IE 8/9.
+ * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
+ */
+
+audio,
+canvas,
+progress,
+video {
+ display: inline-block; /* 1 */
+ vertical-align: baseline; /* 2 */
+}
+
+/**
+ * Prevent modern browsers from displaying `audio` without controls.
+ * Remove excess height in iOS 5 devices.
+ */
+
+audio:not([controls]) {
+ display: none;
+ height: 0;
+}
+
+/**
+ * Address `[hidden]` styling not present in IE 8/9/10.
+ * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
+ */
+
+[hidden],
+template {
+ display: none;
+}
+
+/* Links
+ ========================================================================== */
+
+/**
+ * Remove the gray background color from active links in IE 10.
+ */
+
+a {
+ background-color: transparent;
+}
+
+/**
+ * Improve readability of focused elements when they are also in an
+ * active/hover state.
+ */
+
+a:active,
+a:hover {
+ outline: 0;
+}
+
+/* Text-level semantics
+ ========================================================================== */
+
+/**
+ * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
+ */
+
+abbr[title] {
+ border-bottom: 1px dotted;
+}
+
+/**
+ * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
+ */
+
+b,
+strong {
+ font-weight: bold;
+}
+
+/**
+ * Address styling not present in Safari and Chrome.
+ */
+
+dfn {
+ font-style: italic;
+}
+
+/**
+ * Address variable `h1` font-size and margin within `section` and `article`
+ * contexts in Firefox 4+, Safari, and Chrome.
+ */
+
+h1 {
+ font-size: 2em;
+ margin: 0.67em 0;
+}
+
+/**
+ * Address styling not present in IE 8/9.
+ */
+
+mark {
+ background: #ff0;
+ color: #000;
+}
+
+/**
+ * Address inconsistent and variable font size in all browsers.
+ */
+
+small {
+ font-size: 80%;
+}
+
+/**
+ * Prevent `sub` and `sup` affecting `line-height` in all browsers.
+ */
+
+sub,
+sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
+}
+
+sup {
+ top: -0.5em;
+}
+
+sub {
+ bottom: -0.25em;
+}
+
+/* Embedded content
+ ========================================================================== */
+
+/**
+ * Remove border when inside `a` element in IE 8/9/10.
+ */
+
+img {
+ border: 0;
+}
+
+/**
+ * Correct overflow not hidden in IE 9/10/11.
+ */
+
+svg:not(:root) {
+ overflow: hidden;
+}
+
+/* Grouping content
+ ========================================================================== */
+
+/**
+ * Address margin not present in IE 8/9 and Safari.
+ */
+
+figure {
+ margin: 1em 40px;
+}
+
+/**
+ * Address differences between Firefox and other browsers.
+ */
+
+hr {
+ box-sizing: content-box;
+ height: 0;
+}
+
+/**
+ * Contain overflow in all browsers.
+ */
+
+pre {
+ overflow: auto;
+}
+
+/**
+ * Address odd `em`-unit font size rendering in all browsers.
+ */
+
+code,
+kbd,
+pre,
+samp {
+ font-family: monospace, monospace;
+ font-size: 1em;
+}
+
+/* Forms
+ ========================================================================== */
+
+/**
+ * Known limitation: by default, Chrome and Safari on OS X allow very limited
+ * styling of `select`, unless a `border` property is set.
+ */
+
+/**
+ * 1. Correct color not being inherited.
+ * Known issue: affects color of disabled elements.
+ * 2. Correct font properties not being inherited.
+ * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
+ */
+
+button,
+input,
+optgroup,
+select,
+textarea {
+ color: inherit; /* 1 */
+ font: inherit; /* 2 */
+ margin: 0; /* 3 */
+}
+
+/**
+ * Address `overflow` set to `hidden` in IE 8/9/10/11.
+ */
+
+button {
+ overflow: visible;
+}
+
+/**
+ * Address inconsistent `text-transform` inheritance for `button` and `select`.
+ * All other form control elements do not inherit `text-transform` values.
+ * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
+ * Correct `select` style inheritance in Firefox.
+ */
+
+button,
+select {
+ text-transform: none;
+}
+
+/**
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
+ * and `video` controls.
+ * 2. Correct inability to style clickable `input` types in iOS.
+ * 3. Improve usability and consistency of cursor style between image-type
+ * `input` and others.
+ */
+
+button,
+html input[type="button"], /* 1 */
+input[type="reset"],
+input[type="submit"] {
+ -webkit-appearance: button; /* 2 */
+ cursor: pointer; /* 3 */
+}
+
+/**
+ * Re-set default cursor for disabled elements.
+ */
+
+button[disabled],
+html input[disabled] {
+ cursor: default;
+}
+
+/**
+ * Remove inner padding and border in Firefox 4+.
+ */
+
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ border: 0;
+ padding: 0;
+}
+
+/**
+ * Address Firefox 4+ setting `line-height` on `input` using `!important` in
+ * the UA stylesheet.
+ */
+
+input {
+ line-height: normal;
+}
+
+/**
+ * It's recommended that you don't attempt to style these elements.
+ * Firefox's implementation doesn't respect box-sizing, padding, or width.
+ *
+ * 1. Address box sizing set to `content-box` in IE 8/9/10.
+ * 2. Remove excess padding in IE 8/9/10.
+ */
+
+input[type="checkbox"],
+input[type="radio"] {
+ box-sizing: border-box; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/**
+ * Fix the cursor style for Chrome's increment/decrement buttons. For certain
+ * `font-size` values of the `input`, it causes the cursor style of the
+ * decrement button to change from `default` to `text`.
+ */
+
+input[type="number"]::-webkit-inner-spin-button,
+input[type="number"]::-webkit-outer-spin-button {
+ height: auto;
+}
+
+/**
+ * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
+ * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
+ */
+
+input[type="search"] {
+ -webkit-appearance: textfield; /* 1 */
+ box-sizing: content-box; /* 2 */
+}
+
+/**
+ * Remove inner padding and search cancel button in Safari and Chrome on OS X.
+ * Safari (but not Chrome) clips the cancel button when the search input has
+ * padding (and `textfield` appearance).
+ */
+
+input[type="search"]::-webkit-search-cancel-button,
+input[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+/**
+ * Define consistent border, margin, and padding.
+ */
+
+fieldset {
+ border: 1px solid #c0c0c0;
+ margin: 0 2px;
+ padding: 0.35em 0.625em 0.75em;
+}
+
+/**
+ * 1. Correct `color` not being inherited in IE 8/9/10/11.
+ * 2. Remove padding so people aren't caught out if they zero out fieldsets.
+ */
+
+legend {
+ border: 0; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/**
+ * Remove default vertical scrollbar in IE 8/9/10/11.
+ */
+
+textarea {
+ overflow: auto;
+}
+
+/**
+ * Don't inherit the `font-weight` (applied by a rule above).
+ * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
+ */
+
+optgroup {
+ font-weight: bold;
+}
+
+/* Tables
+ ========================================================================== */
+
+/**
+ * Remove most spacing between table cells.
+ */
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+td,
+th {
+ padding: 0;
+}
diff --git a/TP1/dist/doc/TOC.md b/TP1/dist/doc/TOC.md
new file mode 100644
index 0000000..483997a
--- /dev/null
+++ b/TP1/dist/doc/TOC.md
@@ -0,0 +1,29 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com)
+
+## Getting started
+
+* [Usage](usage.md) — Overview of the project contents.
+* [FAQ](faq.md) — Frequently asked questions along with their answers.
+
+## HTML5 Boilerplate core
+
+* [HTML](html.md) — Guide to the default HTML.
+* [CSS](css.md) — Guide to the default CSS.
+* [JavaScript](js.md) — Guide to the default JavaScript.
+* [Everything else](misc.md).
+
+## Development
+
+* [Extending and customizing HTML5 Boilerplate](extend.md) — Going further
+ with the boilerplate.
+
+## Related projects
+
+The [H5BP organization](https://github.com/h5bp) maintains several projects
+that complement HTML5 Boilerplate, projects that can help you improve different
+aspects of your website/web app (e.g.: the performance, security, etc.).
+
+* [Server Configs](https://github.com/h5bp/server-configs) — Fast and
+ smart configurations for web servers such as Apache and Nginx.
+* [Ant Build Script](https://github.com/h5bp/ant-build-script) — Apache
+ Ant based build script.
diff --git a/TP1/dist/doc/css.md b/TP1/dist/doc/css.md
new file mode 100644
index 0000000..58f6345
--- /dev/null
+++ b/TP1/dist/doc/css.md
@@ -0,0 +1,162 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# The CSS
+
+HTML5 Boilerplate's CSS includes:
+
+* [Normalize.css](#normalizecss)
+* [Useful defaults](#useful-defaults)
+* [Common helpers](#common-helpers)
+* [Placeholder media queries](#media-queries)
+* [Print styles](#print-styles)
+
+This starting CSS does not rely on the presence of
+[conditional class names](https://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/),
+[conditional style sheets](https://css-tricks.com/how-to-create-an-ie-only-stylesheet/),
+or [Modernizr](http://modernizr.com/), and it is ready to use no matter what
+your development preferences happen to be.
+
+
+## Normalize.css
+
+In order to make browsers render all elements more consistently and in line
+with modern standards, we include
+[Normalize.css](https://necolas.github.io/normalize.css/) — a modern, HTML5-ready
+alternative to CSS resets.
+
+As opposed to CSS resets, Normalize.css:
+
+* targets only the styles that need normalizing
+* preserves useful browser defaults rather than erasing them
+* corrects bugs and common browser inconsistencies
+* improves usability with subtle improvements
+* doesn't clutter the debugging tools
+* has better documentation
+
+For more information about Normalize.css, please refer to its [project
+page](https://necolas.github.com/normalize.css/), as well as this
+[blog post](http://nicolasgallagher.com/about-normalize-css/).
+
+
+## Useful defaults
+
+Several base styles are included that build upon `Normalize.css`. These
+styles:
+
+* provide basic typography settings that improve text readability
+* protect against unwanted `text-shadow` during text highlighting
+* tweak the default alignment of some elements (e.g.: `img`, `video`,
+ `fieldset`, `textarea`)
+* style the prompt that is displayed to users using an outdated browser
+
+You are free and even encouraged to modify or add to these base styles as your
+project requires.
+
+
+## Common helpers
+
+Along with the base styles, we also provide some commonly used helper classes.
+
+#### `.hidden`
+
+The `hidden` class can be added to any element that you want to hide visually
+and from screen readers. It could be an element that will be populated and
+displayed later, or an element you will hide with JavaScript.
+
+#### `.visuallyhidden`
+
+The `visuallyhidden` class can be added to any element that you want to hide
+visually, while still have its content accessible to screen readers.
+
+See also:
+
+* [CSS in Action: Invisible Content Just for Screen Reader
+ Users](http://www.webaim.org/techniques/css/invisiblecontent/)
+* [Hiding content for
+ accessibility](http://snook.ca/archives/html_and_css/hiding-content-for-accessibility)
+* [HTML5 Boilerplate - Issue #194](https://github.com/h5bp/html5-boilerplate/issues/194/).
+
+#### `.invisible`
+
+The `invisible` class can be added to any element that you want to hide
+visually and from screen readers, but without affecting the layout.
+
+As opposed to the `hidden` class that effectively removes the element from the
+layout, the `invisible` class will simply make the element invisible while
+keeping it in the flow and not affecting the positioning of the surrounding
+content.
+
+__N.B.__ Try to stay away from, and don't use the classes specified above for
+[keyword stuffing](https://en.wikipedia.org/wiki/Keyword_stuffing) as you will
+harm your site's ranking!
+
+#### `.clearfix`
+
+The `clearfix` class can be added to any element to ensure that it always fully
+contains its floated children.
+
+Over the years there have been many variants of the clearfix hack, but currently,
+we use the [micro clearfix](http://nicolasgallagher.com/micro-clearfix-hack/).
+
+
+## Media Queries
+
+HTML5 Boilerplate makes it easy for you to get started with a
+[_mobile first_](http://www.lukew.com/presos/preso.asp?26) and [_responsive web
+design_](http://www.alistapart.com/articles/responsive-web-design/) approach to
+development. But it's worth remembering that there are [no silver
+bullets](http://blog.cloudfour.com/css-media-query-for-mobile-is-fools-gold/).
+
+We include placeholder media queries to help you build up your mobile styles for
+wider viewports and high-resolution displays. It's recommended that you adapt
+these media queries based on the content of your site rather than mirroring the
+fixed dimensions of specific devices.
+
+If you do not want to take the _mobile first_ approach, you can simply edit or
+remove these placeholder media queries. One possibility would be to work from
+wide viewports down, and use `max-width` media queries instead (e.g.:
+`@media only screen and (max-width: 480px)`).
+
+For more features that can help you in your mobile web development, take a look
+into our [Mobile Boilerplate](https://github.com/h5bp/mobile-boilerplate).
+
+
+## Print styles
+
+Lastly, we provide some useful print styles that will optimize the printing
+process, as well as make the printed pages easier to read.
+
+At printing time, these styles will:
+
+* strip all background colors, change the font color to black, and remove the
+ `text-shadow` — done in order to [help save printer ink and speed up the
+ printing process](http://www.sanbeiji.com/archives/953)
+* underline and expand links to include the URL — done in order to allow users
+ to know where to refer to
+ (exceptions to this are: the links that are
+ [fragment identifiers](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href),
+ or use the
+ [`javascript:` pseudo protocol](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void#JavaScript_URIs))
+* expand abbreviations to include the full description — done in order to allow
+ users to know what the abbreviations stands for
+* provide instructions on how browsers should break the content into pages and
+ on [orphans/widows](https://en.wikipedia.org/wiki/Widows_and_orphans), namely,
+ we instruct
+ [supporting browsers](https://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28Cascading_Style_Sheets%29#Grammar_and_rules)
+ that they should:
+
+ * ensure the table header (``) is [printed on each page spanned by the
+ table](http://css-discuss.incutio.com/wiki/Printing_Tables)
+ * prevent block quotations, preformatted text, images and table rows from
+ being split onto two different pages
+ * ensure that headings never appear on a different page than the text they
+ are associated with
+ * ensure that
+ [orphans and widows](https://en.wikipedia.org/wiki/Widows_and_orphans) do
+ [not appear on printed pages](https://css-tricks.com/almanac/properties/o/orphans/)
+
+The print styles are included along with the other `css` to [avoid the
+additional HTTP request](http://www.phpied.com/delay-loading-your-print-css/).
+Also, they should always be included last, so that the other styles can be
+overwritten.
diff --git a/TP1/dist/doc/extend.md b/TP1/dist/doc/extend.md
new file mode 100644
index 0000000..c98e177
--- /dev/null
+++ b/TP1/dist/doc/extend.md
@@ -0,0 +1,663 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# Extend and customise HTML5 Boilerplate
+
+Here is some useful advice for how you can make your project with HTML5
+Boilerplate even better. We don't want to include it all by default, as
+not everything fits with everyone's needs.
+
+
+* [App Stores](#app-stores)
+* [DNS prefetching](#dns-prefetching)
+* [Google Universal Analytics](#google-universal-analytics)
+* [Internet Explorer](#internet-explorer)
+* [Miscellaneous](#miscellaneous)
+* [News Feeds](#news-feeds)
+* [Search](#search)
+* [Social Networks](#social-networks)
+* [URLs](#urls)
+* [Web Apps](#web-apps)
+
+
+## App Stores
+
+### Install a Chrome Web Store app
+
+Users can install a Chrome app directly from your website, as long as
+the app and site have been associated via Google's Webmaster Tools.
+Read more on [Chrome Web Store's Inline Installation
+docs](https://developer.chrome.com/webstore/inline_installation).
+
+```html
+
+```
+
+### Smart App Banners in iOS 6+ Safari
+
+Stop bothering everyone with gross modals advertising your entry in the
+App Store. Include the following [meta tag](https://developer.apple.com/library/IOS/documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html#//apple_ref/doc/uid/TP40002051-CH6-SW2)
+will unintrusively allow the user the option to download your iOS app,
+or open it with some data about the user's current state on the website.
+
+```html
+
+```
+
+## DNS prefetching
+
+In short, DNS Prefetching is a method of informing the browser of domain names
+referenced on a site so that the client can resolve the DNS for those hosts,
+cache them, and when it comes time to use them, have a faster turn around on
+the request.
+
+### Implicit prefetches
+
+There is a lot of prefetching done for you automatically by the browser. When
+the browser encounters an anchor in your html that does not share the same
+domain name as the current location the browser requests, from the client OS,
+the IP address for this new domain. The client first checks its cache and
+then, lacking a cached copy, makes a request from a DNS server. These requests
+happen in the background and are not meant to block the rendering of the
+page.
+
+The goal of this is that when the foreign IP address is finally needed it will
+already be in the client cache and will not block the loading of the foreign
+content. Fewer requests result in faster page load times. The perception of this
+is increased on a mobile platform where DNS latency can be greater.
+
+#### Disable implicit prefetching
+
+```html
+
+```
+
+Even with X-DNS-Prefetch-Control meta tag (or http header) browsers will still
+prefetch any explicit dns-prefetch links.
+
+**_WARNING:_** THIS MAY MAKE YOUR SITE SLOWER IF YOU RELY ON RESOURCES FROM
+FOREIGN DOMAINS.
+
+### Explicit prefetches
+
+Typically the browser only scans the HTML for foreign domains. If you have
+resources that are outside of your HTML (a javascript request to a remote
+server or a CDN that hosts content that may not be present on every page of
+your site, for example) then you can queue up a domain name to be prefetched.
+
+```html
+
+
+```
+
+You can use as many of these as you need, but it's best if they are all
+immediately after the [Meta
+Charset](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset)
+element (which should go right at the top of the `head`), so the browser can
+act on them ASAP.
+
+#### Common Prefetch Links
+
+Amazon S3:
+
+```html
+
+```
+
+Google APIs:
+
+```html
+
+```
+
+Microsoft Ajax Content Delivery Network:
+
+```html
+
+
+```
+
+### Further reading about DNS prefetching
+
+* https://developer.mozilla.org/en-US/docs/Controlling_DNS_prefetching
+* https://dev.chromium.org/developers/design-documents/dns-prefetching
+* http://blogs.msdn.com/b/ie/archive/2011/03/17/internet-explorer-9-network-performance-improvements.aspx
+* http://dayofjs.com/videos/22158462/web-browsers_alex-russel
+
+
+## Google Universal Analytics
+
+### More tracking settings
+
+The [optimized Google Universal Analytics
+snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics)
+included with HTML5 Boilerplate includes something like this:
+
+```js
+ga('create', 'UA-XXXXX-X', 'auto'); ga('send', 'pageview');
+```
+
+To customize further, see Google's [Advanced
+Setup](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced),
+[Pageview](https://developers.google.com/analytics/devguides/collection/analyticsjs/pages),
+and [Event](https://developers.google.com/analytics/devguides/collection/analyticsjs/events) Docs.
+
+### Anonymize IP addresses
+
+In some countries, no personal data may be transferred outside jurisdictions
+that do not have similarly strict laws (i.e. from Germany to outside the EU).
+Thus a webmaster using the Google Universal Analytics may have to ensure that
+no personal (trackable) data is transferred to the US. You can do that with
+[the `ga('set', 'anonymizeIp', true);`
+parameter](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#anonymizeip)
+before sending any events/pageviews. In use it looks like this:
+
+```js
+ga('create', 'UA-XXXXX-X', 'auto');
+ga('set', 'anonymizeIp', true);
+ga('send', 'pageview');
+```
+
+### Track jQuery AJAX requests in Google Analytics
+
+An article by @JangoSteve explains how to [track jQuery AJAX requests in Google
+Analytics](http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/).
+
+Add this to `plugins.js`:
+
+```js
+/*
+ * Log all jQuery AJAX requests to Google Analytics
+ * See: http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/
+ */
+if (typeof ga !== "undefined" && ga !== null) {
+ $(document).ajaxSend(function(event, xhr, settings){
+ ga('send', 'pageview', settings.url);
+ });
+}
+```
+
+### Track JavaScript errors in Google Analytics
+
+Add this function after `ga` is defined:
+
+```js
+(function(window){
+ var undefined,
+ link = function (href) {
+ var a = window.document.createElement('a');
+ a.href = href;
+ return a;
+ };
+ window.onerror = function (message, file, line, column) {
+ var host = link(file).hostname;
+ ga('send', {
+ 'hitType': 'event',
+ 'eventCategory': (host == window.location.hostname || host == undefined || host == '' ? '' : 'external ') + 'error',
+ 'eventAction': message,
+ 'eventLabel': (file + ' LINE: ' + line + (column ? ' COLUMN: ' + column : '')).trim(),
+ 'nonInteraction': 1
+ });
+ };
+}(window));
+```
+
+### Track page scroll
+
+Add this function after `ga` is defined:
+
+```js
+$(function(){
+ var isDuplicateScrollEvent,
+ scrollTimeStart = new Date,
+ $window = $(window),
+ $document = $(document),
+ scrollPercent;
+
+ $window.scroll(function() {
+ scrollPercent = Math.round(100 * ($window.height() + $window.scrollTop())/$document.height());
+ if (scrollPercent > 90 && !isDuplicateScrollEvent) { //page scrolled to 90%
+ isDuplicateScrollEvent = 1;
+ ga('send', 'event', 'scroll',
+ 'Window: ' + $window.height() + 'px; Document: ' + $document.height() + 'px; Time: ' + Math.round((new Date - scrollTimeStart )/1000,1) + 's'
+ );
+ }
+ });
+});
+```
+
+## Internet Explorer
+
+### Prompt users to switch to "Desktop Mode" in IE10 Metro
+
+IE10 does not support plugins, such as Flash, in Metro mode. If
+your site requires plugins, you can let users know that via the
+`x-ua-compatible` meta element, which will prompt them to switch
+to Desktop Mode.
+
+```html
+
+```
+
+Here's what it looks like alongside H5BP's default `x-ua-compatible`
+values:
+
+```html
+
+```
+
+You can find more information in [Microsoft's IEBlog post about prompting for
+plugin use in IE10 Metro
+Mode](http://blogs.msdn.com/b/ie/archive/2012/01/31/web-sites-and-a-plug-in-free-web.aspx).
+
+### IE Pinned Sites (IE9+)
+
+Enabling your application for pinning will allow IE9 users to add it to their
+Windows Taskbar and Start Menu. This comes with a range of new tools that you
+can easily configure with the elements below. See more [documentation on IE9
+Pinned Sites](https://msdn.microsoft.com/en-us/library/gg131029.aspx).
+
+### Name the Pinned Site for Windows
+
+Without this rule, Windows will use the page title as the name for your
+application.
+
+```html
+
+```
+
+### Give your Pinned Site a tooltip
+
+You know — a tooltip. A little textbox that appears when the user holds their
+mouse over your Pinned Site's icon.
+
+```html
+
+```
+
+### Set a default page for your Pinned Site
+
+If the site should go to a specific URL when it is pinned (such as the
+homepage), enter it here. One idea is to send it to a special URL so you can
+track the number of pinned users, like so:
+`http://www.example.com/index.html?pinned=true`
+
+```html
+
+```
+
+### Recolor IE's controls manually for a Pinned Site
+
+IE9+ will automatically use the overall color of your Pinned Site's favicon to
+shade its browser buttons. UNLESS you give it another color here. Only use
+named colors (`red`) or hex colors (`#ff0000`).
+
+```html
+
+```
+
+### Manually set the window size of a Pinned Site
+
+If the site should open at a certain window size once pinned, you can specify
+the dimensions here. It only supports static pixel dimensions. 800x600
+minimum.
+
+```html
+
+```
+
+### Jump List "Tasks" for Pinned Sites
+
+Add Jump List Tasks that will appear when the Pinned Site's icon gets a
+right-click. Each Task goes to the specified URL, and gets its own mini icon
+(essentially a favicon, a 16x16 .ICO). You can add as many of these as you
+need.
+
+```html
+
+
+```
+
+### (Windows 8) High quality visuals for Pinned Sites
+
+Windows 8 adds the ability for you to provide a PNG tile image and specify the
+tile's background color. [Full details on the IE
+blog](http://blogs.msdn.com/b/ie/archive/2012/06/08/high-quality-visuals-for-pinned-sites-in-windows-8.aspx).
+
+* Create a 144x144 image of your site icon, filling all of the canvas, and
+ using a transparent background.
+* Save this image as a 32-bit PNG and optimize it without reducing
+ colour-depth. It can be named whatever you want (e.g. `metro-tile.png`).
+* To reference the tile and its color, add the HTML `meta` elements described
+ in the IE Blog post.
+
+### (Windows 8) Badges for Pinned Sites
+
+IE10 will poll an XML document for badge information to display on your app's
+tile in the Start screen. The user will be able to receive these badge updates
+even when your app isn't actively running. The badge's value can be a number,
+or one of a predefined list of glyphs.
+
+* [Tutorial on IEBlog with link to badge XML schema](http://blogs.msdn.com/b/ie/archive/2012/04/03/pinned-sites-in-windows-8.aspx)
+* [Available badge values](https://msdn.microsoft.com/en-us/library/ie/br212849.aspx)
+
+```html
+
+```
+
+### Disable link highlighting upon tap in IE10
+
+Similar to [-webkit-tap-highlight-color](http://davidwalsh.name/mobile-highlight-color)
+in iOS Safari. Unlike that CSS property, this is an HTML meta element, and its
+value is boolean rather than a color. It's all or nothing.
+
+```html
+
+```
+
+You can read about this useful element and more techniques in
+[Microsoft's documentation on adapting WebKit-oriented apps for IE10](https://blogs.windows.com/buildingapps/2012/11/15/adapting-your-webkit-optimized-site-for-internet-explorer-10/)
+
+## Search
+
+### Direct search spiders to your sitemap
+
+[Learn how to make a sitemap](http://www.sitemaps.org/protocol.html)
+
+```html
+
+```
+
+### Hide pages from search engines
+
+According to Heather Champ, former community manager at Flickr, you should not
+allow search engines to index your "Contact Us" or "Complaints" page if you
+value your sanity. This is an HTML-centric way of achieving that.
+
+```html
+
+```
+
+**_WARNING:_** DO NOT INCLUDE ON PAGES THAT SHOULD APPEAR IN SEARCH ENGINES.
+
+### Firefox and IE Search Plugins
+
+Sites with in-site search functionality should be strongly considered for a
+browser search plugin. A "search plugin" is an XML file which defines how your
+plugin behaves in the browser. [How to make a browser search
+plugin](https://www.google.com/search?ie=UTF-8&q=how+to+make+browser+search+plugin).
+
+```html
+
+```
+
+
+## Miscellaneous
+
+* Use [polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills).
+
+* Use [Microformats](http://microformats.org/wiki/Main_Page) (via
+ [microdata](http://microformats.org/wiki/microdata)) for optimum search
+ results
+ [visibility](http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html).
+
+* If you're building a web app you may want [native style momentum scrolling in
+ iOS 5+](http://www.johanbrook.com/articles/native-style-momentum-scrolling-to-arrive-in-ios-5/)
+ using `-webkit-overflow-scrolling: touch`.
+
+* If you want to disable the translation prompt in Chrome or block Google
+ Translate from translating your web page, use [``](https://support.google.com/translate/?hl=en#2641276).
+ To disable translation for a particular section of the web page, add
+ [`class="notranslate"`](https://support.google.com/translate/?hl=en#2641276).
+
+* If you want to disable the automatic detection and formatting of possible
+ phone numbers in Safari on iOS, use [``](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html/#//apple_ref/doc/uid/TP40008193-SW5).
+
+* Avoid development/stage websites "leaking" into SERPs (search engine results
+ page) by [implementing X-Robots-tag
+ headers](https://github.com/h5bp/html5-boilerplate/issues/804).
+
+* Screen readers currently have less-than-stellar support for HTML5 but the JS
+ script [accessifyhtml5.js](https://github.com/yatil/accessifyhtml5.js) can
+ help increase accessibility by adding ARIA roles to HTML5 elements.
+
+
+## News Feeds
+
+### RSS
+
+Have an RSS feed? Link to it here. Want to [learn how to write an RSS feed from
+scratch](http://www.rssboard.org/rss-specification)?
+
+```html
+
+```
+
+### Atom
+
+Atom is similar to RSS, and you might prefer to use it instead of or in
+addition to it. [See what Atom's all
+about](http://www.atomenabled.org/developers/syndication/).
+
+```html
+
+```
+
+### Pingbacks
+
+Your server may be notified when another site links to yours. The href
+attribute should contain the location of your pingback service.
+
+```html
+
+```
+
+* High-level explanation: https://codex.wordpress.org/Introduction_to_Blogging#Pingbacks
+* Step-by-step example case: http://www.hixie.ch/specs/pingback/pingback-1.0#TOC5
+* PHP pingback service: https://web.archive.org/web/20131211032834/http://blog.perplexedlabs.com/2009/07/15/xmlrpc-pingbacks-using-php/
+
+
+
+## Social Networks
+
+### Facebook Open Graph data
+
+You can control the information that Facebook and others display when users
+share your site. Below are just the most basic data points you might need. For
+specific content types (including "website"), see [Facebook's built-in Open
+Graph content
+templates](https://developers.facebook.com/docs/opengraph/objects/builtin/).
+Take full advantage of Facebook's support for complex data and activity by
+following the [Open Graph
+tutorial](https://developers.facebook.com/docs/opengraph/tutorial/).
+
+```html
+
+
+
+```
+
+### Twitter Cards
+
+Twitter provides a snippet specification that serves a similar purpose to Open
+Graph. In fact, Twitter will use Open Graph when Cards is not available. Note
+that, as of this writing, Twitter requires that app developers activate Cards
+on a per-domain basis. You can read more about the various snippet formats
+and application process in the [official Twitter Cards
+documentation](https://dev.twitter.com/docs/cards).
+
+```html
+
+
+
+
+
+
+
+```
+
+
+## URLs
+
+### Canonical URL
+
+Signal to search engines and others "Use this URL for this page!" Useful when
+parameters after a `#` or `?` is used to control the display state of a page.
+`http://www.example.com/cart.html?shopping-cart-open=true` can be indexed as
+the cleaner, more accurate `http://www.example.com/cart.html`.
+
+```html
+
+```
+
+### Official shortlink
+
+Signal to the world "This is the shortened URL to use this page!" Poorly
+supported at this time. Learn more by reading the [article about shortlinks on
+the Microformats wiki](http://microformats.org/wiki/rel-shortlink).
+
+```html
+
+```
+
+### Separate mobile URLs
+
+If you use separate URLs for desktop and mobile users, you should consider
+helping search engine algorithms better understand the configuration on your
+web site.
+
+This can be done by adding the following annotations in your HTML pages:
+
+* on the desktop page, add the `link rel="alternate"` tag pointing to the
+ corresponding mobile URL, e.g.:
+
+ ``
+
+* on the mobile page, add the `link rel="canonical"` tag pointing to the
+ corresponding desktop URL, e.g.:
+
+ ``
+
+For more information please see:
+
+* https://developers.google.com/webmasters/smartphone-sites/details#separateurls
+* https://developers.google.com/webmasters/smartphone-sites/feature-phones
+
+
+## Web Apps
+
+There are a couple of meta tags that provide information about a web app when
+added to the Home Screen on iOS:
+
+* Adding `apple-mobile-web-app-capable` will make your web app chrome-less and
+provide the default iOS app view. You can control the color scheme of the
+default view by adding `apple-mobile-web-app-status-bar-style`.
+
+ ```html
+
+
+```
+
+* You can use `apple-mobile-web-app-title` to add a specific sites name for the
+Home Screen icon. This works since iOS 6.
+
+ ```html
+
+```
+
+For further information please read the [official
+documentation](https://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)
+on Apple's site.
+
+
+### Apple Touch Icons
+
+The Apple touch icons can be seen as the favicons of iOS devices.
+
+The main sizes of the Apple touch icons are:
+
+* `57×57px` – iPhone with @1x display and iPod Touch
+* `72×72px` – iPad and iPad mini with @1x display running iOS ≤ 6
+* `76×76px` – iPad and iPad mini with @1x display running iOS ≥ 7
+* `114×114px` – iPhone with @2x display running iOS ≤ 6
+* `120×120px` – iPhone with @2x and @3x display running iOS ≥ 7
+* `144×144px` – iPad and iPad mini with @2x display running iOS ≤ 6
+* `152×152px` – iPad and iPad mini with @2x display running iOS 7
+* `180×180px` – iPad and iPad mini with @2x display running iOS 8
+
+Displays meaning:
+
+* @1x - non-Retina
+* @2x - Retina
+* @3x - Retina HD
+
+More information about the displays of iOS devices can be found
+[here](https://en.wikipedia.org/wiki/List_of_iOS_devices#Display).
+
+In most cases, one `180×180px` touch icon named `apple-touch-icon.png`
+and including:
+
+```html
+
+```
+
+in the `` of the page is enough. If you use art-direction and/or
+want to have different content for each device, you can add more touch
+icons as written above.
+
+For a more comprehensive overview, please refer to Mathias' [article on Touch
+Icons](https://mathiasbynens.be/notes/touch-icons).
+
+
+### Apple Touch Startup Image
+
+Apart from that it is possible to add start-up screens for web apps on iOS. This
+basically works by defining `apple-touch-startup-image` with an according link
+to the image. Since iOS devices have different screen resolutions it is
+necessary to add media queries to detect which image to load. Here is an
+example for a retina iPhone:
+
+```html
+
+```
+
+However, it is possible to detect which start-up image to use with JavaScript.
+The Mobile Boilerplate provides a useful function for this. Please see
+[helpers.js](https://github.com/h5bp/mobile-boilerplate/blob/v4.1.0/js/helper.js#L336-L383)
+for the implementation.
+
+
+### Chrome Mobile web apps
+
+Chrome Mobile has a specific meta tag for making apps [installable to the
+homescreen](https://developer.chrome.com/multidevice/android/installtohomescreen)
+which tries to be a more generic replacement to Apple's proprietary meta tag:
+
+```html
+
+```
+
+Same applies to the touch icons:
+
+```html
+
+```
+
+### Theme Color
+
+You can add the [`theme-color` meta extension](https://github.com/whatwg/meta-theme-color)
+in the `` of your pages to suggest the color that browsers and
+OSes should use if they customize the display of individual pages in
+their UIs with varying colors.
+
+```html
+
+```
+
+The `content` attribute extension can take any valid CSS color.
+
+Currently, the `theme-color` meta extension is supported by [Chrome 39+
+for Android Lollipop](http://updates.html5rocks.com/2014/11/Support-for-theme-color-in-Chrome-39-for-Android)
+and [Firefox OS 2.1+](https://twitter.com/ahmednefzaoui/status/492344698493997057).
diff --git a/TP1/dist/doc/faq.md b/TP1/dist/doc/faq.md
new file mode 100644
index 0000000..4a93ca5
--- /dev/null
+++ b/TP1/dist/doc/faq.md
@@ -0,0 +1,46 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# Frequently asked questions
+
+* [Why is the Google Analytics code at the bottom? Google recommends it be
+ placed in the ``.](#why-is-the-google-analytics-code-at-the-bottom-google-recommends-it-be-placed-in-the-head)
+* [How can I integrate Bootstrap with HTML5
+ Boilerplate?](#how-can-i-integrate-bootstrap-with-html5-boilerplate)
+* [Do I need to upgrade my site each time a new version of HTML5 Boilerplate is
+ released?](#do-i-need-to-upgrade-my-site-each-time-a-new-version-of-html5-boilerplate-is-released)
+* [Where can I get help with support
+ questions?](#where-can-i-get-help-with-support-questions)
+
+--
+
+
+### Why is the Google Analytics code at the bottom? Google recommends it be placed in the ``.
+
+The main advantage of placing it in the `` is that you will track the
+user's `pageview` even if they leave the page before it has been fully loaded.
+However, having the code at the bottom of the page [helps improve
+performance](https://stevesouders.com/efws/inline-scripts-bottom.php).
+
+
+### How can I integrate [Bootstrap](http://getbootstrap.com/) with HTML5 Boilerplate?
+
+One simple way is to use [Initializr](http://www.initializr.com/) and create a
+custom build that includes both HTML5 Boilerplate and
+[Bootstrap](http://getbootstrap.com/).
+
+Read more about how [HTML5 Boilerplate and Bootstrap complement each
+other](https://www.quora.com/Is-Bootstrap-a-complement-or-an-alternative-to-HTML5-Boilerplate-or-viceversa/answer/Nicolas-Gallagher).
+
+
+### Do I need to upgrade my site each time a new version of HTML5 Boilerplate is released?
+
+No, same as you don't normally replace the foundation of a house once it
+was built. However, there is nothing stopping you from trying to work in the
+latest changes, but you'll have to assess the costs/benefits of doing so.
+
+
+### Where can I get help with support questions?
+
+Please ask for help on
+[StackOverflow](https://stackoverflow.com/questions/tagged/html5boilerplate).
diff --git a/TP1/dist/doc/html.md b/TP1/dist/doc/html.md
new file mode 100644
index 0000000..65a4a20
--- /dev/null
+++ b/TP1/dist/doc/html.md
@@ -0,0 +1,227 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# The HTML
+
+By default, HTML5 Boilerplate provides two `html` pages:
+
+* [`index.html`](#indexhtml) - a default HTML skeleton that should form the
+ basis of all pages on your website
+* [`404.html`](#404html) - a placeholder 404 error page
+
+
+## `index.html`
+
+
+### The `no-js` class
+
+The `no-js` class is provided in order to allow you to more easily and
+explicitly add custom styles based on whether JavaScript is disabled
+(`.no-js`) or enabled (`.js`). Using this technique also helps [avoid the
+FOUC](https://www.paulirish.com/2009/avoiding-the-fouc-v3/).
+
+
+## Language attribute
+
+Please consider specifying the language of your content by adding the `lang`
+attribute to `` as in this example:
+
+```html
+
+```
+
+### The order of the `` and `` tags
+
+The order in which the `` and the `` tags are specified is
+important because:
+
+1) the charset declaration (``):
+
+ * must be included completely within the [first 1024 bytes of the
+ document](https://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset)
+
+ * should be specified as early as possible (before any content that could
+ be controlled by an attacker, such as a `` element) in order to
+ avoid a potential [encoding-related security
+ issue](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7) in
+ Internet Explorer
+
+2) the meta tag for compatibility mode
+ (``):
+
+ * [needs to be included before all other tags except for the `` and
+ the other ``
+ tags](https://msdn.microsoft.com/en-us/library/cc288325.aspx)
+
+
+### `x-ua-compatible`
+
+Internet Explorer 8/9/10 support [document compatibility
+modes](https://msdn.microsoft.com/en-us/library/cc288325.aspx) that affect the
+way webpages are interpreted and displayed. Because of this, even if your site's
+visitor is using, let's say, Internet Explorer 9, it's possible that IE will not
+use the latest rendering engine, and instead, decide to render your page using
+the Internet Explorer 5.5 rendering engine.
+
+Specifying the `x-ua-compatible` meta tag:
+
+```html
+
+```
+
+or sending the page with the following HTTP response header
+
+```
+X-UA-Compatible: IE=edge
+```
+
+will force Internet Explorer 8/9/10 to render the webpage in the highest
+available mode in [the various cases when it may
+not](https://hsivonen.fi/doctype/#ie8), and therefore, ensure that anyone
+browsing your site is treated to the best possible user experience that
+browser can offer.
+
+If possible, we recommend that you remove the `meta` tag and send only the
+HTTP response header as the `meta` tag will not always work if your site is
+served on a non-standard port, as Internet Explorer's preference option
+`Display intranet sites in Compatibility View` is checked by default.
+
+If you are using Apache as your webserver, including the
+[`.htaccess`](https://github.com/h5bp/server-configs-apache) file takes care of
+the HTTP header. If you are using a different server, check out our [other
+server config](https://github.com/h5bp/server-configs).
+
+Starting with Internet Explorer 11, [document modes are
+deprecated](https://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode).
+If your business still relies on older web apps and services that were
+designed for older versions of Internet Explorer, you might want to consider
+enabling [Enterprise Mode](http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx) throughout your company.
+
+
+## Mobile viewport
+
+There are a few different options that you can use with the [`viewport` meta
+tag](https://docs.google.com/present/view?id=dkx3qtm_22dxsrgcf4 "Viewport and
+Media Queries - The Complete Idiot's Guide"). You can find out more in [the
+Apple developer docs](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html).
+HTML5 Boilerplate comes with a simple setup that strikes a good balance for general use cases.
+
+```html
+
+```
+
+## Favicons and Touch Icon
+
+The shortcut icons should be put in the root directory of your site. HTML5
+Boilerplate comes with a default set of icons (include favicon and one Apple
+Touch Icon) that you can use as a baseline to create your own.
+
+Please refer to the more detailed description in the [Extend section](extend.md)
+of these docs.
+
+## Modernizr
+
+HTML5 Boilerplate uses a custom build of Modernizr.
+
+[Modernizr](http://modernizr.com) is a JavaScript library which adds classes to
+the `html` element based on the results of feature test and which ensures that
+all browsers can make use of HTML5 elements (as it includes the HTML5 Shiv).
+This allows you to target parts of your CSS and JavaScript based on the
+features supported by a browser.
+
+In general, in order to keep page load times to a minimum, it's best to call
+any JavaScript at the end of the page because if a script is slow to load
+from an external server it may cause the whole page to hang. That said, the
+Modernizr script *needs* to run *before* the browser begins rendering the page,
+so that browsers lacking support for some of the new HTML5 elements are able to
+handle them properly. Therefore the Modernizr script is the only JavaScript
+file synchronously loaded at the top of the document.
+
+## What about polyfills?
+
+If you need to include [polyfills](https://remysharp.com/2010/10/08/what-is-a-polyfill)
+in your project, you must make sure those load before any other JavaScript. If you're
+using some polyfill CDN service, like [cdn.polyfill.io](https://cdn.polyfill.io/),
+just put it before the other scripts in the bottom of the page:
+
+```html
+
+
+
+
+
+
+```
+
+If you like to just include the polyfills yourself, you could include them in
+`js/plugins.js`. When you have a bunch of polyfills to load in, you could
+also create a `polyfills.js` file in the `js/vendor` directory. Also using
+this technique, make sure the polyfills are all loaded before any other
+Javascript.
+
+There are some misconceptions about Modernizr and polyfills. It's important
+to understand that Modernizr just handles feature checking, not polyfilling
+itself. The only thing Modernizr does regarding polyfills is that the team
+maintains [a huge list of cross Browser polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills).
+
+## The content area
+
+The central part of the boilerplate template is pretty much empty. This is
+intentional, in order to make the boilerplate suitable for both web page and
+web app development.
+
+### Browser Upgrade Prompt
+
+The main content area of the boilerplate includes a prompt to install an up to
+date browser for users of IE 6/7. If you intended to support IE 6/7, then you
+should remove the snippet of code.
+
+### jQuery CDN for jQuery
+
+The jQuery CDN version of the jQuery JavaScript library is referenced towards
+the bottom of the page. A local fallback of jQuery is included for rare instances
+when the CDN version might not be available, and to facilitate offline
+development.
+
+The jQuery CDN version was chosen over other potential candidates
+([like Google's Hosted Libraries](https://developers.google.com/speed/libraries/))
+because it's fast ([comparable or faster than Google by some
+measures](https://www.cdnperf.com/#jsdelivr,cdnjs,google,yandex,microsoft,jquery,bootstrapcdn/https/90))
+and, (unlike Google's CDN) is available to China's hundreds of millions of internet users.
+For many years we [chose](https://github.com/h5bp/html5-boilerplate/issues/1191)
+the Google Hosted version over the jQuery CDN because it was available
+over HTTPS (the jQuery CDN was not,) and it offered a better chance of
+hitting the cache lottery owing to the popularity of the Google CDN.
+The first issue is no longer valid and the second is far outweighed by
+being able to serve jQuery to Chinese users.
+
+While the jQuery CDN is a strong default solution your site or application may
+require a different configuration. Testing your site with services like
+[WebPageTest](https://www.webpagetest.org/) and browser tools like
+[PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/) or
+[YSlow](https://developer.yahoo.com/yslow/) will help you examine the real
+world performance of your site and can show where you can optimize your specific
+site or application.
+
+### Google Universal Analytics Tracking Code
+
+Finally, an optimized version of the Google Universal Analytics tracking code is
+included. Google recommends that this script be placed at the top of the page.
+Factors to consider: if you place this script at the top of the page, you’ll
+be able to count users who don’t fully load the page, and you’ll incur the max
+number of simultaneous connections of the browser.
+
+Further information:
+
+* [Optimizing the Google Universal Analytics
+ Snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics)
+* [Introduction to
+ Analytics.js](https://developers.google.com/analytics/devguides/collection/analyticsjs/)
+* [Google Analytics Demos & Tools](https://ga-dev-tools.appspot.com/)
+
+**N.B.** The Google Universal Analytics snippet is included by default mainly
+because Google Analytics is [currently one of the most popular tracking
+solutions](https://trends.builtwith.com/analytics/Google-Analytics) out there.
+However, its usage isn't set in stone, and you SHOULD consider exploring the
+[alternatives](https://en.wikipedia.org/wiki/List_of_web_analytics_software)
+and use whatever suits your needs best!
diff --git a/TP1/dist/doc/js.md b/TP1/dist/doc/js.md
new file mode 100644
index 0000000..1c30b55
--- /dev/null
+++ b/TP1/dist/doc/js.md
@@ -0,0 +1,37 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# The JavaScript
+
+Information about the default JavaScript included in the project.
+
+## main.js
+
+This file can be used to contain or reference your site/app JavaScript code.
+For larger projects, you can make use of a JavaScript module loader, like
+[Require.js](http://requirejs.org/), to load any other scripts you need to
+run.
+
+## plugins.js
+
+This file can be used to contain all your plugins, such as jQuery plugins and
+other 3rd party scripts.
+
+One approach is to put jQuery plugins inside of a `(function($){ ...
+})(jQuery);` closure to make sure they're in the jQuery namespace safety
+blanket. Read more about [jQuery plugin
+authoring](https://learn.jquery.com/plugins/#Getting_Started).
+
+By default the `plugins.js` file contains a small script to avoid `console`
+errors in browsers that lack a `console`. The script will make sure that, if
+a console method isn't available, that method will have the value of empty
+function, thus, preventing the browser from throwing an error.
+
+
+## vendor
+
+This directory can be used to contain all 3rd party library code.
+
+Minified versions of the latest jQuery and Modernizr libraries are included by
+default. You may wish to create your own [custom Modernizr
+build](http://www.modernizr.com/download/).
diff --git a/TP1/dist/doc/misc.md b/TP1/dist/doc/misc.md
new file mode 100644
index 0000000..cf5409a
--- /dev/null
+++ b/TP1/dist/doc/misc.md
@@ -0,0 +1,178 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# Miscellaneous
+
+* [.gitignore](#gitignore)
+* [.editorconfig](#editorconfig)
+* [Server Configuration](#server-configuration)
+* [crossdomain.xml](#crossdomainxml)
+* [robots.txt](#robotstxt)
+* [browserconfig.xml](#browserconfigxml)
+
+--
+
+## .gitignore
+
+HTML5 Boilerplate includes a basic project-level `.gitignore`. This should
+primarily be used to avoid certain project-level files and directories from
+being kept under source control. Different development-environments will
+benefit from different collections of ignores.
+
+OS-specific and editor-specific files should be ignored using a "global
+ignore" that applies to all repositories on your system.
+
+For example, add the following to your `~/.gitconfig`, where the `.gitignore`
+in your HOME directory contains the files and directories you'd like to
+globally ignore:
+
+```gitignore
+[core]
+ excludesfile = ~/.gitignore
+```
+
+* More on global ignores: https://help.github.com/articles/ignoring-files
+* Comprehensive set of ignores on GitHub: https://github.com/github/gitignore
+
+
+## .editorconfig
+
+The `.editorconfig` file is provided in order to encourage and help you and
+your team define and maintain consistent coding styles between different
+editors and IDEs.
+
+By default, `.editorconfig` includes some basic
+[properties](http://editorconfig.org/#supported-properties) that reflect the
+coding styles from the files provided by default, but you can easily change
+them to better suit your needs.
+
+In order for your editor/IDE to apply the
+[properties](http://editorconfig.org/#supported-properties) from the
+`.editorconfig` file, you will need to [install a
+plugin]( http://editorconfig.org/#download).
+
+__N.B.__ If you aren't using the server configurations provided by HTML5
+Boilerplate, we highly encourage you to configure your server to block
+access to `.editorconfig` files, as they can disclose sensitive information!
+
+For more details, please refer to the [EditorConfig
+project](http://editorconfig.org/).
+
+
+## Server Configuration
+
+H5BP includes a [`.htaccess`](#htaccess) file for the [Apache HTTP
+server](https://httpd.apache.org/docs/). If you are not using Apache
+as your web server, then you are encouraged to download a
+[server configuration](https://github.com/h5bp/server-configs) that
+corresponds to your web server and environment.
+
+A `.htaccess` (hypertext access) file is a [Apache HTTP server
+configuration file](https://github.com/h5bp/server-configs-apache).
+The `.htaccess` file is mostly used for:
+
+* Rewriting URLs
+* Controlling cache
+* Authentication
+* Server-side includes
+* Redirects
+* Gzipping
+
+If you have access to the main server configuration file (usually called
+`httpd.conf`), you should add the logic from the `.htaccess` file in, for
+example, a section in the main configuration file. This is usually
+the recommended way, as using .htaccess files slows down Apache!
+
+To enable Apache modules locally, please see:
+https://github.com/h5bp/server-configs-apache/wiki/How-to-enable-Apache-modules.
+
+In the repo the `.htaccess` is used for:
+
+* Allowing cross-origin access to web fonts
+* CORS header for images when browsers request it
+* Enable `404.html` as 404 error document
+* Making the website experience better for IE users better
+* Media UTF-8 as character encoding for `text/html` and `text/plain`
+* Enabling the rewrite URLs engine
+* Forcing or removing the `www.` at the begin of a URL
+* It blocks access to directories without a default document
+* It blocks access to files that can expose sensitive information.
+* It reduces MIME type security risks
+* It forces compressing (gzipping)
+* It tells the browser whether they should request a specific file from the
+ server or whether they should grab it from the browser's cache
+
+When using `.htaccess` we recommend reading all inline comments (the rules after
+a `#`) in the file once. There is a bunch of optional stuff in it.
+
+If you want to know more about the `.htaccess` file check out the
+[Apache HTTP server docs](https://httpd.apache.org/docs/) or more
+specifically the [htaccess
+section](https://httpd.apache.org/docs/current/howto/htaccess.html).
+
+Notice that the original repo for the `.htaccess` file is [this
+one](https://github.com/h5bp/server-configs-apache).
+
+
+## crossdomain.xml
+
+The _cross-domain policy file_ is an XML document that gives a web client —
+such as Adobe Flash Player, Adobe Reader, etc. — permission to handle data
+across multiple domains, by:
+
+ * granting read access to data
+ * permitting the client to include custom headers in cross-domain requests
+ * granting permissions for socket-based connections
+
+__e.g.__ If a client hosts content from a particular source domain and that
+content makes requests directed towards a domain other than its own, the remote
+domain would need to host a cross-domain policy file in order to grant access
+to the source domain and allow the client to continue with the transaction.
+
+For more in-depth information, please see Adobe's [cross-domain policy file
+specification](https://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html).
+
+
+## robots.txt
+
+The `robots.txt` file is used to give instructions to web robots on what can
+be crawled from the website.
+
+By default, the file provided by this project includes the next two lines:
+
+ * `User-agent: *` - the following rules apply to all web robots
+ * `Disallow:` - everything on the website is allowed to be crawled
+
+If you want to disallow certain pages you will need to specify the path in a
+`Disallow` directive (e.g.: `Disallow: /path`) or, if you want to disallow
+crawling of all content, use `Disallow: /`.
+
+The `/robots.txt` file is not intended for access control, so don't try to
+use it as such. Think of it as a "No Entry" sign, rather than a locked door.
+URLs disallowed by the `robots.txt` file might still be indexed without being
+crawled, and the content from within the `robots.txt` file can be viewed by
+anyone, potentially disclosing the location of your private content! So, if
+you want to block access to private content, use proper authentication instead.
+
+For more information about `robots.txt`, please see:
+
+ * [robotstxt.org](http://www.robotstxt.org/)
+ * [How Google handles the `robots.txt` file](https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt)
+
+
+## browserconfig.xml
+
+The `browserconfig.xml` file is used to customize the tile displayed when users
+pin your site to the Windows 8.1 start screen. In there you can define custom
+tile colors, custom images or even [live tiles](https://msdn.microsoft.com/en-us/library/ie/dn455106.aspx#CreatingLiveTiles).
+
+By default, the file points to 2 placeholder tile images:
+
+* `tile.png` (558x558px): used for `Small`, `Medium` and `Large` tiles.
+ This image resizes automatically when necessary.
+* `tile-wide.png` (558x270px): user for `Wide` tiles.
+
+Notice that IE11 uses the same images when adding a site to the `favorites`.
+
+For more in-depth information about the `browserconfig.xml` file, please
+see [MSDN](https://msdn.microsoft.com/en-us/library/ie/dn320426.aspx).
diff --git a/TP1/dist/doc/usage.md b/TP1/dist/doc/usage.md
new file mode 100644
index 0000000..b8fc360
--- /dev/null
+++ b/TP1/dist/doc/usage.md
@@ -0,0 +1,130 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# Usage
+
+Once you have cloned or downloaded HTML5 Boilerplate, creating a site or app
+usually involves the following:
+
+1. Set up the basic structure of the site.
+2. Add some content, style, and functionality.
+3. Run your site locally to see how it looks.
+4. (Optionally run a build script to automate the optimization of your site -
+ e.g. [ant build script](https://github.com/h5bp/ant-build-script))
+5. Deploy your site.
+
+
+## Basic structure
+
+A basic HTML5 Boilerplate site initially looks something like this:
+
+```
+.
+├── css
+│ ├── main.css
+│ └── normalize.css
+├── doc
+├── img
+├── js
+│ ├── main.js
+│ ├── plugins.js
+│ └── vendor
+│ ├── jquery.min.js
+│ └── modernizr.min.js
+├── .editorconfig
+├── .htaccess
+├── 404.html
+├── apple-touch-icon.png
+├── browserconfig.xml
+├── index.html
+├── humans.txt
+├── robots.txt
+├── crossdomain.xml
+├── favicon.ico
+├── tile-wide.png
+└── tile.png
+```
+
+What follows is a general overview of each major part and how to use them.
+
+### css
+
+This directory should contain all your project's CSS files. It includes some
+initial CSS to help get you started from a solid foundation. [About the
+CSS](css.md).
+
+### doc
+
+This directory contains all the HTML5 Boilerplate documentation. You can use it
+as the location and basis for your own project's documentation.
+
+### js
+
+This directory should contain all your project's JS files. Libraries, plugins,
+and custom code can all be included here. It includes some initial JS to help
+get you started. [About the JavaScript](js.md).
+
+### .htaccess
+
+The default web server configs are for Apache. For more information, please
+refer to the [Apache Server Configs
+repository](https://github.com/h5bp/server-configs-apache).
+
+Host your site on a server other than Apache? You're likely to find the
+corresponding server configs project listed in our [Server Configs
+](https://github.com/h5bp/server-configs/blob/master/README.md) repository.
+
+### 404.html
+
+A helpful custom 404 to get you started.
+
+### browserconfig.xml
+
+This file contains all settings regarding custom tiles for IE11.
+
+For more info on this topic, please refer to
+[MSDN](https://msdn.microsoft.com/en-us/library/ie/dn455106.aspx).
+
+### .editorconfig
+
+The `.editorconfig` file is provided in order to encourage and help you and
+your team to maintain consistent coding styles between different
+editors and IDEs. [Read more about the `.editorconfig` file](misc.md#editorconfig).
+
+### index.html
+
+This is the default HTML skeleton that should form the basis of all pages on
+your site. If you are using a server-side templating framework, then you will
+need to integrate this starting HTML with your setup.
+
+Make sure that you update the URLs for the referenced CSS and JavaScript if you
+modify the directory structure at all.
+
+If you are using Google Universal Analytics, make sure that you edit the
+corresponding snippet at the bottom to include your analytics ID.
+
+### humans.txt
+
+Edit this file to include the team that worked on your site/app, and the
+technology powering it.
+
+### robots.txt
+
+Edit this file to include any pages you need hidden from search engines.
+
+### crossdomain.xml
+
+A template for working with cross-domain requests. [About
+crossdomain.xml](misc.md#crossdomainxml).
+
+### Icons
+
+Replace the default `favicon.ico`, `tile.png`, `tile-wide.png` and Apple
+Touch Icon with your own.
+
+If you want to use different Apple Touch Icons for different resolutions please
+refer to the [according documentation](extend.md#apple-touch-icons).
+
+You might want to check out Hans' handy [HTML5 Boilerplate Favicon and Apple
+Touch Icon
+PSD-Template](https://drublic.de/blog/html5-boilerplate-favicons-psd-template/).
diff --git a/TP1/dist/favicon.ico b/TP1/dist/favicon.ico
new file mode 100644
index 0000000..be74abd
Binary files /dev/null and b/TP1/dist/favicon.ico differ
diff --git a/TP1/dist/humans.txt b/TP1/dist/humans.txt
new file mode 100644
index 0000000..8d2330f
--- /dev/null
+++ b/TP1/dist/humans.txt
@@ -0,0 +1,15 @@
+# humanstxt.org/
+# The humans responsible & technology colophon
+
+# TEAM
+
+ -- --
+
+# THANKS
+
+
+
+# TECHNOLOGY COLOPHON
+
+ CSS3, HTML5
+ Apache Server Configs, jQuery, Modernizr, Normalize.css
diff --git a/TP1/dist/img/.gitignore b/TP1/dist/img/.gitignore
new file mode 100644
index 0000000..e69de29
diff --git a/TP1/dist/index.html b/TP1/dist/index.html
new file mode 100644
index 0000000..b22fb35
--- /dev/null
+++ b/TP1/dist/index.html
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Sorry, but the page you were trying to view does not exist.
+
+
+
diff --git a/TP1/src/apple-touch-icon.png b/TP1/src/apple-touch-icon.png
new file mode 100644
index 0000000..600738f
Binary files /dev/null and b/TP1/src/apple-touch-icon.png differ
diff --git a/TP1/src/browserconfig.xml b/TP1/src/browserconfig.xml
new file mode 100644
index 0000000..219b759
--- /dev/null
+++ b/TP1/src/browserconfig.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/TP1/src/crossdomain.xml b/TP1/src/crossdomain.xml
new file mode 100644
index 0000000..818b822
--- /dev/null
+++ b/TP1/src/crossdomain.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/TP1/src/css/main.css b/TP1/src/css/main.css
new file mode 100644
index 0000000..08e8118
--- /dev/null
+++ b/TP1/src/css/main.css
@@ -0,0 +1,280 @@
+/*
+ * What follows is the result of much research on cross-browser styling.
+ * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
+ * Kroc Camen, and the H5BP dev community and team.
+ */
+
+/* ==========================================================================
+ Base styles: opinionated defaults
+ ========================================================================== */
+
+html {
+ color: #222;
+ font-size: 1em;
+ line-height: 1.4;
+}
+
+/*
+ * Remove text-shadow in selection highlight:
+ * https://twitter.com/miketaylr/status/12228805301
+ *
+ * These selection rule sets have to be separate.
+ * Customize the background color to match your design.
+ */
+
+::selection {
+ background: #b3d4fc;
+ text-shadow: none;
+}
+
+/*
+ * A better looking default horizontal rule
+ */
+
+hr {
+ display: block;
+ height: 1px;
+ border: 0;
+ border-top: 1px solid #ccc;
+ margin: 1em 0;
+ padding: 0;
+}
+table {
+ border-collapse: collapse;
+}
+td, th {
+ border : 1px solid #2ce833;
+}
+
+/*
+ * Remove the gap between audio, canvas, iframes,
+ * images, videos and the bottom of their containers:
+ * https://github.com/h5bp/html5-boilerplate/issues/440
+ */
+
+audio,
+canvas,
+iframe,
+img,
+svg,
+video {
+ vertical-align: middle;
+}
+
+/*
+ * Remove default fieldset styles.
+ */
+
+fieldset {
+ border: 0;
+ margin: 0;
+ padding: 0;
+}
+
+/*
+ * Allow only vertical resizing of textareas.
+ */
+
+textarea {
+ resize: vertical;
+}
+
+/* ==========================================================================
+ Browser Upgrade Prompt
+ ========================================================================== */
+
+.browserupgrade {
+ margin: 0.2em 0;
+ background: #ccc;
+ color: #000;
+ padding: 0.2em 0;
+}
+
+/* ==========================================================================
+ Author's custom styles
+ ========================================================================== */
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/* ==========================================================================
+ Helper classes
+ ========================================================================== */
+
+/*
+ * Hide visually and from screen readers
+ */
+
+.hidden {
+ display: none !important;
+}
+
+/*
+ * Hide only visually, but have it available for screen readers:
+ * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
+ */
+
+.visuallyhidden {
+ border: 0;
+ clip: rect(0 0 0 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px;
+}
+
+/*
+ * Extends the .visuallyhidden class to allow the element
+ * to be focusable when navigated to via the keyboard:
+ * https://www.drupal.org/node/897638
+ */
+
+.visuallyhidden.focusable:active,
+.visuallyhidden.focusable:focus {
+ clip: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ position: static;
+ width: auto;
+}
+
+/*
+ * Hide visually and from screen readers, but maintain layout
+ */
+
+.invisible {
+ visibility: hidden;
+}
+
+/*
+ * Clearfix: contain floats
+ *
+ * For modern browsers
+ * 1. The space content is one way to avoid an Opera bug when the
+ * `contenteditable` attribute is included anywhere else in the document.
+ * Otherwise it causes space to appear at the top and bottom of elements
+ * that receive the `clearfix` class.
+ * 2. The use of `table` rather than `block` is only necessary if using
+ * `:before` to contain the top-margins of child elements.
+ */
+
+.clearfix:before,
+.clearfix:after {
+ content: " "; /* 1 */
+ display: table; /* 2 */
+}
+
+.clearfix:after {
+ clear: both;
+}
+
+/* ==========================================================================
+ EXAMPLE Media Queries for Responsive Design.
+ These examples override the primary ('mobile first') styles.
+ Modify as content requires.
+ ========================================================================== */
+
+@media only screen and (min-width: 35em) {
+ /* Style adjustments for viewports that meet the condition */
+}
+
+@media print,
+ (min-resolution: 1.25dppx),
+ (min-resolution: 120dpi) {
+ /* Style adjustments for high resolution devices */
+}
+
+/* ==========================================================================
+ Print styles.
+ Inlined to avoid the additional HTTP request:
+ http://www.phpied.com/delay-loading-your-print-css/
+ ========================================================================== */
+
+@media print {
+ *,
+ *:before,
+ *:after,
+ *:first-letter,
+ *:first-line {
+ background: transparent !important;
+ color: #000 !important; /* Black prints faster:
+ http://www.sanbeiji.com/archives/953 */
+ box-shadow: none !important;
+ text-shadow: none !important;
+ }
+
+ a,
+ a:visited {
+ text-decoration: underline;
+ }
+
+ a[href]:after {
+ content: " (" attr(href) ")";
+ }
+
+ abbr[title]:after {
+ content: " (" attr(title) ")";
+ }
+
+ /*
+ * Don't show links that are fragment identifiers,
+ * or use the `javascript:` pseudo protocol
+ */
+
+ a[href^="#"]:after,
+ a[href^="javascript:"]:after {
+ content: "";
+ }
+
+ pre,
+ blockquote {
+ border: 1px solid #999;
+ page-break-inside: avoid;
+ }
+
+ /*
+ * Printing Tables:
+ * http://css-discuss.incutio.com/wiki/Printing_Tables
+ */
+
+ thead {
+ display: table-header-group;
+ }
+
+ tr,
+ img {
+ page-break-inside: avoid;
+ }
+
+ img {
+ max-width: 100% !important;
+ }
+
+ p,
+ h2,
+ h3 {
+ orphans: 3;
+ widows: 3;
+ }
+
+ h2,
+ h3 {
+ page-break-after: avoid;
+ }
+}
diff --git a/TP1/src/doc/TOC.md b/TP1/src/doc/TOC.md
new file mode 100644
index 0000000..483997a
--- /dev/null
+++ b/TP1/src/doc/TOC.md
@@ -0,0 +1,29 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com)
+
+## Getting started
+
+* [Usage](usage.md) — Overview of the project contents.
+* [FAQ](faq.md) — Frequently asked questions along with their answers.
+
+## HTML5 Boilerplate core
+
+* [HTML](html.md) — Guide to the default HTML.
+* [CSS](css.md) — Guide to the default CSS.
+* [JavaScript](js.md) — Guide to the default JavaScript.
+* [Everything else](misc.md).
+
+## Development
+
+* [Extending and customizing HTML5 Boilerplate](extend.md) — Going further
+ with the boilerplate.
+
+## Related projects
+
+The [H5BP organization](https://github.com/h5bp) maintains several projects
+that complement HTML5 Boilerplate, projects that can help you improve different
+aspects of your website/web app (e.g.: the performance, security, etc.).
+
+* [Server Configs](https://github.com/h5bp/server-configs) — Fast and
+ smart configurations for web servers such as Apache and Nginx.
+* [Ant Build Script](https://github.com/h5bp/ant-build-script) — Apache
+ Ant based build script.
diff --git a/TP1/src/doc/css.md b/TP1/src/doc/css.md
new file mode 100644
index 0000000..58f6345
--- /dev/null
+++ b/TP1/src/doc/css.md
@@ -0,0 +1,162 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# The CSS
+
+HTML5 Boilerplate's CSS includes:
+
+* [Normalize.css](#normalizecss)
+* [Useful defaults](#useful-defaults)
+* [Common helpers](#common-helpers)
+* [Placeholder media queries](#media-queries)
+* [Print styles](#print-styles)
+
+This starting CSS does not rely on the presence of
+[conditional class names](https://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/),
+[conditional style sheets](https://css-tricks.com/how-to-create-an-ie-only-stylesheet/),
+or [Modernizr](http://modernizr.com/), and it is ready to use no matter what
+your development preferences happen to be.
+
+
+## Normalize.css
+
+In order to make browsers render all elements more consistently and in line
+with modern standards, we include
+[Normalize.css](https://necolas.github.io/normalize.css/) — a modern, HTML5-ready
+alternative to CSS resets.
+
+As opposed to CSS resets, Normalize.css:
+
+* targets only the styles that need normalizing
+* preserves useful browser defaults rather than erasing them
+* corrects bugs and common browser inconsistencies
+* improves usability with subtle improvements
+* doesn't clutter the debugging tools
+* has better documentation
+
+For more information about Normalize.css, please refer to its [project
+page](https://necolas.github.com/normalize.css/), as well as this
+[blog post](http://nicolasgallagher.com/about-normalize-css/).
+
+
+## Useful defaults
+
+Several base styles are included that build upon `Normalize.css`. These
+styles:
+
+* provide basic typography settings that improve text readability
+* protect against unwanted `text-shadow` during text highlighting
+* tweak the default alignment of some elements (e.g.: `img`, `video`,
+ `fieldset`, `textarea`)
+* style the prompt that is displayed to users using an outdated browser
+
+You are free and even encouraged to modify or add to these base styles as your
+project requires.
+
+
+## Common helpers
+
+Along with the base styles, we also provide some commonly used helper classes.
+
+#### `.hidden`
+
+The `hidden` class can be added to any element that you want to hide visually
+and from screen readers. It could be an element that will be populated and
+displayed later, or an element you will hide with JavaScript.
+
+#### `.visuallyhidden`
+
+The `visuallyhidden` class can be added to any element that you want to hide
+visually, while still have its content accessible to screen readers.
+
+See also:
+
+* [CSS in Action: Invisible Content Just for Screen Reader
+ Users](http://www.webaim.org/techniques/css/invisiblecontent/)
+* [Hiding content for
+ accessibility](http://snook.ca/archives/html_and_css/hiding-content-for-accessibility)
+* [HTML5 Boilerplate - Issue #194](https://github.com/h5bp/html5-boilerplate/issues/194/).
+
+#### `.invisible`
+
+The `invisible` class can be added to any element that you want to hide
+visually and from screen readers, but without affecting the layout.
+
+As opposed to the `hidden` class that effectively removes the element from the
+layout, the `invisible` class will simply make the element invisible while
+keeping it in the flow and not affecting the positioning of the surrounding
+content.
+
+__N.B.__ Try to stay away from, and don't use the classes specified above for
+[keyword stuffing](https://en.wikipedia.org/wiki/Keyword_stuffing) as you will
+harm your site's ranking!
+
+#### `.clearfix`
+
+The `clearfix` class can be added to any element to ensure that it always fully
+contains its floated children.
+
+Over the years there have been many variants of the clearfix hack, but currently,
+we use the [micro clearfix](http://nicolasgallagher.com/micro-clearfix-hack/).
+
+
+## Media Queries
+
+HTML5 Boilerplate makes it easy for you to get started with a
+[_mobile first_](http://www.lukew.com/presos/preso.asp?26) and [_responsive web
+design_](http://www.alistapart.com/articles/responsive-web-design/) approach to
+development. But it's worth remembering that there are [no silver
+bullets](http://blog.cloudfour.com/css-media-query-for-mobile-is-fools-gold/).
+
+We include placeholder media queries to help you build up your mobile styles for
+wider viewports and high-resolution displays. It's recommended that you adapt
+these media queries based on the content of your site rather than mirroring the
+fixed dimensions of specific devices.
+
+If you do not want to take the _mobile first_ approach, you can simply edit or
+remove these placeholder media queries. One possibility would be to work from
+wide viewports down, and use `max-width` media queries instead (e.g.:
+`@media only screen and (max-width: 480px)`).
+
+For more features that can help you in your mobile web development, take a look
+into our [Mobile Boilerplate](https://github.com/h5bp/mobile-boilerplate).
+
+
+## Print styles
+
+Lastly, we provide some useful print styles that will optimize the printing
+process, as well as make the printed pages easier to read.
+
+At printing time, these styles will:
+
+* strip all background colors, change the font color to black, and remove the
+ `text-shadow` — done in order to [help save printer ink and speed up the
+ printing process](http://www.sanbeiji.com/archives/953)
+* underline and expand links to include the URL — done in order to allow users
+ to know where to refer to
+ (exceptions to this are: the links that are
+ [fragment identifiers](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-href),
+ or use the
+ [`javascript:` pseudo protocol](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void#JavaScript_URIs))
+* expand abbreviations to include the full description — done in order to allow
+ users to know what the abbreviations stands for
+* provide instructions on how browsers should break the content into pages and
+ on [orphans/widows](https://en.wikipedia.org/wiki/Widows_and_orphans), namely,
+ we instruct
+ [supporting browsers](https://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28Cascading_Style_Sheets%29#Grammar_and_rules)
+ that they should:
+
+ * ensure the table header (``) is [printed on each page spanned by the
+ table](http://css-discuss.incutio.com/wiki/Printing_Tables)
+ * prevent block quotations, preformatted text, images and table rows from
+ being split onto two different pages
+ * ensure that headings never appear on a different page than the text they
+ are associated with
+ * ensure that
+ [orphans and widows](https://en.wikipedia.org/wiki/Widows_and_orphans) do
+ [not appear on printed pages](https://css-tricks.com/almanac/properties/o/orphans/)
+
+The print styles are included along with the other `css` to [avoid the
+additional HTTP request](http://www.phpied.com/delay-loading-your-print-css/).
+Also, they should always be included last, so that the other styles can be
+overwritten.
diff --git a/TP1/src/doc/extend.md b/TP1/src/doc/extend.md
new file mode 100644
index 0000000..c98e177
--- /dev/null
+++ b/TP1/src/doc/extend.md
@@ -0,0 +1,663 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# Extend and customise HTML5 Boilerplate
+
+Here is some useful advice for how you can make your project with HTML5
+Boilerplate even better. We don't want to include it all by default, as
+not everything fits with everyone's needs.
+
+
+* [App Stores](#app-stores)
+* [DNS prefetching](#dns-prefetching)
+* [Google Universal Analytics](#google-universal-analytics)
+* [Internet Explorer](#internet-explorer)
+* [Miscellaneous](#miscellaneous)
+* [News Feeds](#news-feeds)
+* [Search](#search)
+* [Social Networks](#social-networks)
+* [URLs](#urls)
+* [Web Apps](#web-apps)
+
+
+## App Stores
+
+### Install a Chrome Web Store app
+
+Users can install a Chrome app directly from your website, as long as
+the app and site have been associated via Google's Webmaster Tools.
+Read more on [Chrome Web Store's Inline Installation
+docs](https://developer.chrome.com/webstore/inline_installation).
+
+```html
+
+```
+
+### Smart App Banners in iOS 6+ Safari
+
+Stop bothering everyone with gross modals advertising your entry in the
+App Store. Include the following [meta tag](https://developer.apple.com/library/IOS/documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html#//apple_ref/doc/uid/TP40002051-CH6-SW2)
+will unintrusively allow the user the option to download your iOS app,
+or open it with some data about the user's current state on the website.
+
+```html
+
+```
+
+## DNS prefetching
+
+In short, DNS Prefetching is a method of informing the browser of domain names
+referenced on a site so that the client can resolve the DNS for those hosts,
+cache them, and when it comes time to use them, have a faster turn around on
+the request.
+
+### Implicit prefetches
+
+There is a lot of prefetching done for you automatically by the browser. When
+the browser encounters an anchor in your html that does not share the same
+domain name as the current location the browser requests, from the client OS,
+the IP address for this new domain. The client first checks its cache and
+then, lacking a cached copy, makes a request from a DNS server. These requests
+happen in the background and are not meant to block the rendering of the
+page.
+
+The goal of this is that when the foreign IP address is finally needed it will
+already be in the client cache and will not block the loading of the foreign
+content. Fewer requests result in faster page load times. The perception of this
+is increased on a mobile platform where DNS latency can be greater.
+
+#### Disable implicit prefetching
+
+```html
+
+```
+
+Even with X-DNS-Prefetch-Control meta tag (or http header) browsers will still
+prefetch any explicit dns-prefetch links.
+
+**_WARNING:_** THIS MAY MAKE YOUR SITE SLOWER IF YOU RELY ON RESOURCES FROM
+FOREIGN DOMAINS.
+
+### Explicit prefetches
+
+Typically the browser only scans the HTML for foreign domains. If you have
+resources that are outside of your HTML (a javascript request to a remote
+server or a CDN that hosts content that may not be present on every page of
+your site, for example) then you can queue up a domain name to be prefetched.
+
+```html
+
+
+```
+
+You can use as many of these as you need, but it's best if they are all
+immediately after the [Meta
+Charset](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta#attr-charset)
+element (which should go right at the top of the `head`), so the browser can
+act on them ASAP.
+
+#### Common Prefetch Links
+
+Amazon S3:
+
+```html
+
+```
+
+Google APIs:
+
+```html
+
+```
+
+Microsoft Ajax Content Delivery Network:
+
+```html
+
+
+```
+
+### Further reading about DNS prefetching
+
+* https://developer.mozilla.org/en-US/docs/Controlling_DNS_prefetching
+* https://dev.chromium.org/developers/design-documents/dns-prefetching
+* http://blogs.msdn.com/b/ie/archive/2011/03/17/internet-explorer-9-network-performance-improvements.aspx
+* http://dayofjs.com/videos/22158462/web-browsers_alex-russel
+
+
+## Google Universal Analytics
+
+### More tracking settings
+
+The [optimized Google Universal Analytics
+snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics)
+included with HTML5 Boilerplate includes something like this:
+
+```js
+ga('create', 'UA-XXXXX-X', 'auto'); ga('send', 'pageview');
+```
+
+To customize further, see Google's [Advanced
+Setup](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced),
+[Pageview](https://developers.google.com/analytics/devguides/collection/analyticsjs/pages),
+and [Event](https://developers.google.com/analytics/devguides/collection/analyticsjs/events) Docs.
+
+### Anonymize IP addresses
+
+In some countries, no personal data may be transferred outside jurisdictions
+that do not have similarly strict laws (i.e. from Germany to outside the EU).
+Thus a webmaster using the Google Universal Analytics may have to ensure that
+no personal (trackable) data is transferred to the US. You can do that with
+[the `ga('set', 'anonymizeIp', true);`
+parameter](https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#anonymizeip)
+before sending any events/pageviews. In use it looks like this:
+
+```js
+ga('create', 'UA-XXXXX-X', 'auto');
+ga('set', 'anonymizeIp', true);
+ga('send', 'pageview');
+```
+
+### Track jQuery AJAX requests in Google Analytics
+
+An article by @JangoSteve explains how to [track jQuery AJAX requests in Google
+Analytics](http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/).
+
+Add this to `plugins.js`:
+
+```js
+/*
+ * Log all jQuery AJAX requests to Google Analytics
+ * See: http://www.alfajango.com/blog/track-jquery-ajax-requests-in-google-analytics/
+ */
+if (typeof ga !== "undefined" && ga !== null) {
+ $(document).ajaxSend(function(event, xhr, settings){
+ ga('send', 'pageview', settings.url);
+ });
+}
+```
+
+### Track JavaScript errors in Google Analytics
+
+Add this function after `ga` is defined:
+
+```js
+(function(window){
+ var undefined,
+ link = function (href) {
+ var a = window.document.createElement('a');
+ a.href = href;
+ return a;
+ };
+ window.onerror = function (message, file, line, column) {
+ var host = link(file).hostname;
+ ga('send', {
+ 'hitType': 'event',
+ 'eventCategory': (host == window.location.hostname || host == undefined || host == '' ? '' : 'external ') + 'error',
+ 'eventAction': message,
+ 'eventLabel': (file + ' LINE: ' + line + (column ? ' COLUMN: ' + column : '')).trim(),
+ 'nonInteraction': 1
+ });
+ };
+}(window));
+```
+
+### Track page scroll
+
+Add this function after `ga` is defined:
+
+```js
+$(function(){
+ var isDuplicateScrollEvent,
+ scrollTimeStart = new Date,
+ $window = $(window),
+ $document = $(document),
+ scrollPercent;
+
+ $window.scroll(function() {
+ scrollPercent = Math.round(100 * ($window.height() + $window.scrollTop())/$document.height());
+ if (scrollPercent > 90 && !isDuplicateScrollEvent) { //page scrolled to 90%
+ isDuplicateScrollEvent = 1;
+ ga('send', 'event', 'scroll',
+ 'Window: ' + $window.height() + 'px; Document: ' + $document.height() + 'px; Time: ' + Math.round((new Date - scrollTimeStart )/1000,1) + 's'
+ );
+ }
+ });
+});
+```
+
+## Internet Explorer
+
+### Prompt users to switch to "Desktop Mode" in IE10 Metro
+
+IE10 does not support plugins, such as Flash, in Metro mode. If
+your site requires plugins, you can let users know that via the
+`x-ua-compatible` meta element, which will prompt them to switch
+to Desktop Mode.
+
+```html
+
+```
+
+Here's what it looks like alongside H5BP's default `x-ua-compatible`
+values:
+
+```html
+
+```
+
+You can find more information in [Microsoft's IEBlog post about prompting for
+plugin use in IE10 Metro
+Mode](http://blogs.msdn.com/b/ie/archive/2012/01/31/web-sites-and-a-plug-in-free-web.aspx).
+
+### IE Pinned Sites (IE9+)
+
+Enabling your application for pinning will allow IE9 users to add it to their
+Windows Taskbar and Start Menu. This comes with a range of new tools that you
+can easily configure with the elements below. See more [documentation on IE9
+Pinned Sites](https://msdn.microsoft.com/en-us/library/gg131029.aspx).
+
+### Name the Pinned Site for Windows
+
+Without this rule, Windows will use the page title as the name for your
+application.
+
+```html
+
+```
+
+### Give your Pinned Site a tooltip
+
+You know — a tooltip. A little textbox that appears when the user holds their
+mouse over your Pinned Site's icon.
+
+```html
+
+```
+
+### Set a default page for your Pinned Site
+
+If the site should go to a specific URL when it is pinned (such as the
+homepage), enter it here. One idea is to send it to a special URL so you can
+track the number of pinned users, like so:
+`http://www.example.com/index.html?pinned=true`
+
+```html
+
+```
+
+### Recolor IE's controls manually for a Pinned Site
+
+IE9+ will automatically use the overall color of your Pinned Site's favicon to
+shade its browser buttons. UNLESS you give it another color here. Only use
+named colors (`red`) or hex colors (`#ff0000`).
+
+```html
+
+```
+
+### Manually set the window size of a Pinned Site
+
+If the site should open at a certain window size once pinned, you can specify
+the dimensions here. It only supports static pixel dimensions. 800x600
+minimum.
+
+```html
+
+```
+
+### Jump List "Tasks" for Pinned Sites
+
+Add Jump List Tasks that will appear when the Pinned Site's icon gets a
+right-click. Each Task goes to the specified URL, and gets its own mini icon
+(essentially a favicon, a 16x16 .ICO). You can add as many of these as you
+need.
+
+```html
+
+
+```
+
+### (Windows 8) High quality visuals for Pinned Sites
+
+Windows 8 adds the ability for you to provide a PNG tile image and specify the
+tile's background color. [Full details on the IE
+blog](http://blogs.msdn.com/b/ie/archive/2012/06/08/high-quality-visuals-for-pinned-sites-in-windows-8.aspx).
+
+* Create a 144x144 image of your site icon, filling all of the canvas, and
+ using a transparent background.
+* Save this image as a 32-bit PNG and optimize it without reducing
+ colour-depth. It can be named whatever you want (e.g. `metro-tile.png`).
+* To reference the tile and its color, add the HTML `meta` elements described
+ in the IE Blog post.
+
+### (Windows 8) Badges for Pinned Sites
+
+IE10 will poll an XML document for badge information to display on your app's
+tile in the Start screen. The user will be able to receive these badge updates
+even when your app isn't actively running. The badge's value can be a number,
+or one of a predefined list of glyphs.
+
+* [Tutorial on IEBlog with link to badge XML schema](http://blogs.msdn.com/b/ie/archive/2012/04/03/pinned-sites-in-windows-8.aspx)
+* [Available badge values](https://msdn.microsoft.com/en-us/library/ie/br212849.aspx)
+
+```html
+
+```
+
+### Disable link highlighting upon tap in IE10
+
+Similar to [-webkit-tap-highlight-color](http://davidwalsh.name/mobile-highlight-color)
+in iOS Safari. Unlike that CSS property, this is an HTML meta element, and its
+value is boolean rather than a color. It's all or nothing.
+
+```html
+
+```
+
+You can read about this useful element and more techniques in
+[Microsoft's documentation on adapting WebKit-oriented apps for IE10](https://blogs.windows.com/buildingapps/2012/11/15/adapting-your-webkit-optimized-site-for-internet-explorer-10/)
+
+## Search
+
+### Direct search spiders to your sitemap
+
+[Learn how to make a sitemap](http://www.sitemaps.org/protocol.html)
+
+```html
+
+```
+
+### Hide pages from search engines
+
+According to Heather Champ, former community manager at Flickr, you should not
+allow search engines to index your "Contact Us" or "Complaints" page if you
+value your sanity. This is an HTML-centric way of achieving that.
+
+```html
+
+```
+
+**_WARNING:_** DO NOT INCLUDE ON PAGES THAT SHOULD APPEAR IN SEARCH ENGINES.
+
+### Firefox and IE Search Plugins
+
+Sites with in-site search functionality should be strongly considered for a
+browser search plugin. A "search plugin" is an XML file which defines how your
+plugin behaves in the browser. [How to make a browser search
+plugin](https://www.google.com/search?ie=UTF-8&q=how+to+make+browser+search+plugin).
+
+```html
+
+```
+
+
+## Miscellaneous
+
+* Use [polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills).
+
+* Use [Microformats](http://microformats.org/wiki/Main_Page) (via
+ [microdata](http://microformats.org/wiki/microdata)) for optimum search
+ results
+ [visibility](http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html).
+
+* If you're building a web app you may want [native style momentum scrolling in
+ iOS 5+](http://www.johanbrook.com/articles/native-style-momentum-scrolling-to-arrive-in-ios-5/)
+ using `-webkit-overflow-scrolling: touch`.
+
+* If you want to disable the translation prompt in Chrome or block Google
+ Translate from translating your web page, use [``](https://support.google.com/translate/?hl=en#2641276).
+ To disable translation for a particular section of the web page, add
+ [`class="notranslate"`](https://support.google.com/translate/?hl=en#2641276).
+
+* If you want to disable the automatic detection and formatting of possible
+ phone numbers in Safari on iOS, use [``](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html/#//apple_ref/doc/uid/TP40008193-SW5).
+
+* Avoid development/stage websites "leaking" into SERPs (search engine results
+ page) by [implementing X-Robots-tag
+ headers](https://github.com/h5bp/html5-boilerplate/issues/804).
+
+* Screen readers currently have less-than-stellar support for HTML5 but the JS
+ script [accessifyhtml5.js](https://github.com/yatil/accessifyhtml5.js) can
+ help increase accessibility by adding ARIA roles to HTML5 elements.
+
+
+## News Feeds
+
+### RSS
+
+Have an RSS feed? Link to it here. Want to [learn how to write an RSS feed from
+scratch](http://www.rssboard.org/rss-specification)?
+
+```html
+
+```
+
+### Atom
+
+Atom is similar to RSS, and you might prefer to use it instead of or in
+addition to it. [See what Atom's all
+about](http://www.atomenabled.org/developers/syndication/).
+
+```html
+
+```
+
+### Pingbacks
+
+Your server may be notified when another site links to yours. The href
+attribute should contain the location of your pingback service.
+
+```html
+
+```
+
+* High-level explanation: https://codex.wordpress.org/Introduction_to_Blogging#Pingbacks
+* Step-by-step example case: http://www.hixie.ch/specs/pingback/pingback-1.0#TOC5
+* PHP pingback service: https://web.archive.org/web/20131211032834/http://blog.perplexedlabs.com/2009/07/15/xmlrpc-pingbacks-using-php/
+
+
+
+## Social Networks
+
+### Facebook Open Graph data
+
+You can control the information that Facebook and others display when users
+share your site. Below are just the most basic data points you might need. For
+specific content types (including "website"), see [Facebook's built-in Open
+Graph content
+templates](https://developers.facebook.com/docs/opengraph/objects/builtin/).
+Take full advantage of Facebook's support for complex data and activity by
+following the [Open Graph
+tutorial](https://developers.facebook.com/docs/opengraph/tutorial/).
+
+```html
+
+
+
+```
+
+### Twitter Cards
+
+Twitter provides a snippet specification that serves a similar purpose to Open
+Graph. In fact, Twitter will use Open Graph when Cards is not available. Note
+that, as of this writing, Twitter requires that app developers activate Cards
+on a per-domain basis. You can read more about the various snippet formats
+and application process in the [official Twitter Cards
+documentation](https://dev.twitter.com/docs/cards).
+
+```html
+
+
+
+
+
+
+
+```
+
+
+## URLs
+
+### Canonical URL
+
+Signal to search engines and others "Use this URL for this page!" Useful when
+parameters after a `#` or `?` is used to control the display state of a page.
+`http://www.example.com/cart.html?shopping-cart-open=true` can be indexed as
+the cleaner, more accurate `http://www.example.com/cart.html`.
+
+```html
+
+```
+
+### Official shortlink
+
+Signal to the world "This is the shortened URL to use this page!" Poorly
+supported at this time. Learn more by reading the [article about shortlinks on
+the Microformats wiki](http://microformats.org/wiki/rel-shortlink).
+
+```html
+
+```
+
+### Separate mobile URLs
+
+If you use separate URLs for desktop and mobile users, you should consider
+helping search engine algorithms better understand the configuration on your
+web site.
+
+This can be done by adding the following annotations in your HTML pages:
+
+* on the desktop page, add the `link rel="alternate"` tag pointing to the
+ corresponding mobile URL, e.g.:
+
+ ``
+
+* on the mobile page, add the `link rel="canonical"` tag pointing to the
+ corresponding desktop URL, e.g.:
+
+ ``
+
+For more information please see:
+
+* https://developers.google.com/webmasters/smartphone-sites/details#separateurls
+* https://developers.google.com/webmasters/smartphone-sites/feature-phones
+
+
+## Web Apps
+
+There are a couple of meta tags that provide information about a web app when
+added to the Home Screen on iOS:
+
+* Adding `apple-mobile-web-app-capable` will make your web app chrome-less and
+provide the default iOS app view. You can control the color scheme of the
+default view by adding `apple-mobile-web-app-status-bar-style`.
+
+ ```html
+
+
+```
+
+* You can use `apple-mobile-web-app-title` to add a specific sites name for the
+Home Screen icon. This works since iOS 6.
+
+ ```html
+
+```
+
+For further information please read the [official
+documentation](https://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)
+on Apple's site.
+
+
+### Apple Touch Icons
+
+The Apple touch icons can be seen as the favicons of iOS devices.
+
+The main sizes of the Apple touch icons are:
+
+* `57×57px` – iPhone with @1x display and iPod Touch
+* `72×72px` – iPad and iPad mini with @1x display running iOS ≤ 6
+* `76×76px` – iPad and iPad mini with @1x display running iOS ≥ 7
+* `114×114px` – iPhone with @2x display running iOS ≤ 6
+* `120×120px` – iPhone with @2x and @3x display running iOS ≥ 7
+* `144×144px` – iPad and iPad mini with @2x display running iOS ≤ 6
+* `152×152px` – iPad and iPad mini with @2x display running iOS 7
+* `180×180px` – iPad and iPad mini with @2x display running iOS 8
+
+Displays meaning:
+
+* @1x - non-Retina
+* @2x - Retina
+* @3x - Retina HD
+
+More information about the displays of iOS devices can be found
+[here](https://en.wikipedia.org/wiki/List_of_iOS_devices#Display).
+
+In most cases, one `180×180px` touch icon named `apple-touch-icon.png`
+and including:
+
+```html
+
+```
+
+in the `` of the page is enough. If you use art-direction and/or
+want to have different content for each device, you can add more touch
+icons as written above.
+
+For a more comprehensive overview, please refer to Mathias' [article on Touch
+Icons](https://mathiasbynens.be/notes/touch-icons).
+
+
+### Apple Touch Startup Image
+
+Apart from that it is possible to add start-up screens for web apps on iOS. This
+basically works by defining `apple-touch-startup-image` with an according link
+to the image. Since iOS devices have different screen resolutions it is
+necessary to add media queries to detect which image to load. Here is an
+example for a retina iPhone:
+
+```html
+
+```
+
+However, it is possible to detect which start-up image to use with JavaScript.
+The Mobile Boilerplate provides a useful function for this. Please see
+[helpers.js](https://github.com/h5bp/mobile-boilerplate/blob/v4.1.0/js/helper.js#L336-L383)
+for the implementation.
+
+
+### Chrome Mobile web apps
+
+Chrome Mobile has a specific meta tag for making apps [installable to the
+homescreen](https://developer.chrome.com/multidevice/android/installtohomescreen)
+which tries to be a more generic replacement to Apple's proprietary meta tag:
+
+```html
+
+```
+
+Same applies to the touch icons:
+
+```html
+
+```
+
+### Theme Color
+
+You can add the [`theme-color` meta extension](https://github.com/whatwg/meta-theme-color)
+in the `` of your pages to suggest the color that browsers and
+OSes should use if they customize the display of individual pages in
+their UIs with varying colors.
+
+```html
+
+```
+
+The `content` attribute extension can take any valid CSS color.
+
+Currently, the `theme-color` meta extension is supported by [Chrome 39+
+for Android Lollipop](http://updates.html5rocks.com/2014/11/Support-for-theme-color-in-Chrome-39-for-Android)
+and [Firefox OS 2.1+](https://twitter.com/ahmednefzaoui/status/492344698493997057).
diff --git a/TP1/src/doc/faq.md b/TP1/src/doc/faq.md
new file mode 100644
index 0000000..4a93ca5
--- /dev/null
+++ b/TP1/src/doc/faq.md
@@ -0,0 +1,46 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# Frequently asked questions
+
+* [Why is the Google Analytics code at the bottom? Google recommends it be
+ placed in the ``.](#why-is-the-google-analytics-code-at-the-bottom-google-recommends-it-be-placed-in-the-head)
+* [How can I integrate Bootstrap with HTML5
+ Boilerplate?](#how-can-i-integrate-bootstrap-with-html5-boilerplate)
+* [Do I need to upgrade my site each time a new version of HTML5 Boilerplate is
+ released?](#do-i-need-to-upgrade-my-site-each-time-a-new-version-of-html5-boilerplate-is-released)
+* [Where can I get help with support
+ questions?](#where-can-i-get-help-with-support-questions)
+
+--
+
+
+### Why is the Google Analytics code at the bottom? Google recommends it be placed in the ``.
+
+The main advantage of placing it in the `` is that you will track the
+user's `pageview` even if they leave the page before it has been fully loaded.
+However, having the code at the bottom of the page [helps improve
+performance](https://stevesouders.com/efws/inline-scripts-bottom.php).
+
+
+### How can I integrate [Bootstrap](http://getbootstrap.com/) with HTML5 Boilerplate?
+
+One simple way is to use [Initializr](http://www.initializr.com/) and create a
+custom build that includes both HTML5 Boilerplate and
+[Bootstrap](http://getbootstrap.com/).
+
+Read more about how [HTML5 Boilerplate and Bootstrap complement each
+other](https://www.quora.com/Is-Bootstrap-a-complement-or-an-alternative-to-HTML5-Boilerplate-or-viceversa/answer/Nicolas-Gallagher).
+
+
+### Do I need to upgrade my site each time a new version of HTML5 Boilerplate is released?
+
+No, same as you don't normally replace the foundation of a house once it
+was built. However, there is nothing stopping you from trying to work in the
+latest changes, but you'll have to assess the costs/benefits of doing so.
+
+
+### Where can I get help with support questions?
+
+Please ask for help on
+[StackOverflow](https://stackoverflow.com/questions/tagged/html5boilerplate).
diff --git a/TP1/src/doc/html.md b/TP1/src/doc/html.md
new file mode 100644
index 0000000..65a4a20
--- /dev/null
+++ b/TP1/src/doc/html.md
@@ -0,0 +1,227 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# The HTML
+
+By default, HTML5 Boilerplate provides two `html` pages:
+
+* [`index.html`](#indexhtml) - a default HTML skeleton that should form the
+ basis of all pages on your website
+* [`404.html`](#404html) - a placeholder 404 error page
+
+
+## `index.html`
+
+
+### The `no-js` class
+
+The `no-js` class is provided in order to allow you to more easily and
+explicitly add custom styles based on whether JavaScript is disabled
+(`.no-js`) or enabled (`.js`). Using this technique also helps [avoid the
+FOUC](https://www.paulirish.com/2009/avoiding-the-fouc-v3/).
+
+
+## Language attribute
+
+Please consider specifying the language of your content by adding the `lang`
+attribute to `` as in this example:
+
+```html
+
+```
+
+### The order of the `` and `` tags
+
+The order in which the `` and the `` tags are specified is
+important because:
+
+1) the charset declaration (``):
+
+ * must be included completely within the [first 1024 bytes of the
+ document](https://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset)
+
+ * should be specified as early as possible (before any content that could
+ be controlled by an attacker, such as a `` element) in order to
+ avoid a potential [encoding-related security
+ issue](https://code.google.com/p/doctype-mirror/wiki/ArticleUtf7) in
+ Internet Explorer
+
+2) the meta tag for compatibility mode
+ (``):
+
+ * [needs to be included before all other tags except for the `` and
+ the other ``
+ tags](https://msdn.microsoft.com/en-us/library/cc288325.aspx)
+
+
+### `x-ua-compatible`
+
+Internet Explorer 8/9/10 support [document compatibility
+modes](https://msdn.microsoft.com/en-us/library/cc288325.aspx) that affect the
+way webpages are interpreted and displayed. Because of this, even if your site's
+visitor is using, let's say, Internet Explorer 9, it's possible that IE will not
+use the latest rendering engine, and instead, decide to render your page using
+the Internet Explorer 5.5 rendering engine.
+
+Specifying the `x-ua-compatible` meta tag:
+
+```html
+
+```
+
+or sending the page with the following HTTP response header
+
+```
+X-UA-Compatible: IE=edge
+```
+
+will force Internet Explorer 8/9/10 to render the webpage in the highest
+available mode in [the various cases when it may
+not](https://hsivonen.fi/doctype/#ie8), and therefore, ensure that anyone
+browsing your site is treated to the best possible user experience that
+browser can offer.
+
+If possible, we recommend that you remove the `meta` tag and send only the
+HTTP response header as the `meta` tag will not always work if your site is
+served on a non-standard port, as Internet Explorer's preference option
+`Display intranet sites in Compatibility View` is checked by default.
+
+If you are using Apache as your webserver, including the
+[`.htaccess`](https://github.com/h5bp/server-configs-apache) file takes care of
+the HTTP header. If you are using a different server, check out our [other
+server config](https://github.com/h5bp/server-configs).
+
+Starting with Internet Explorer 11, [document modes are
+deprecated](https://msdn.microsoft.com/en-us/library/ie/bg182625.aspx#docmode).
+If your business still relies on older web apps and services that were
+designed for older versions of Internet Explorer, you might want to consider
+enabling [Enterprise Mode](http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx) throughout your company.
+
+
+## Mobile viewport
+
+There are a few different options that you can use with the [`viewport` meta
+tag](https://docs.google.com/present/view?id=dkx3qtm_22dxsrgcf4 "Viewport and
+Media Queries - The Complete Idiot's Guide"). You can find out more in [the
+Apple developer docs](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html).
+HTML5 Boilerplate comes with a simple setup that strikes a good balance for general use cases.
+
+```html
+
+```
+
+## Favicons and Touch Icon
+
+The shortcut icons should be put in the root directory of your site. HTML5
+Boilerplate comes with a default set of icons (include favicon and one Apple
+Touch Icon) that you can use as a baseline to create your own.
+
+Please refer to the more detailed description in the [Extend section](extend.md)
+of these docs.
+
+## Modernizr
+
+HTML5 Boilerplate uses a custom build of Modernizr.
+
+[Modernizr](http://modernizr.com) is a JavaScript library which adds classes to
+the `html` element based on the results of feature test and which ensures that
+all browsers can make use of HTML5 elements (as it includes the HTML5 Shiv).
+This allows you to target parts of your CSS and JavaScript based on the
+features supported by a browser.
+
+In general, in order to keep page load times to a minimum, it's best to call
+any JavaScript at the end of the page because if a script is slow to load
+from an external server it may cause the whole page to hang. That said, the
+Modernizr script *needs* to run *before* the browser begins rendering the page,
+so that browsers lacking support for some of the new HTML5 elements are able to
+handle them properly. Therefore the Modernizr script is the only JavaScript
+file synchronously loaded at the top of the document.
+
+## What about polyfills?
+
+If you need to include [polyfills](https://remysharp.com/2010/10/08/what-is-a-polyfill)
+in your project, you must make sure those load before any other JavaScript. If you're
+using some polyfill CDN service, like [cdn.polyfill.io](https://cdn.polyfill.io/),
+just put it before the other scripts in the bottom of the page:
+
+```html
+
+
+
+
+
+
+```
+
+If you like to just include the polyfills yourself, you could include them in
+`js/plugins.js`. When you have a bunch of polyfills to load in, you could
+also create a `polyfills.js` file in the `js/vendor` directory. Also using
+this technique, make sure the polyfills are all loaded before any other
+Javascript.
+
+There are some misconceptions about Modernizr and polyfills. It's important
+to understand that Modernizr just handles feature checking, not polyfilling
+itself. The only thing Modernizr does regarding polyfills is that the team
+maintains [a huge list of cross Browser polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills).
+
+## The content area
+
+The central part of the boilerplate template is pretty much empty. This is
+intentional, in order to make the boilerplate suitable for both web page and
+web app development.
+
+### Browser Upgrade Prompt
+
+The main content area of the boilerplate includes a prompt to install an up to
+date browser for users of IE 6/7. If you intended to support IE 6/7, then you
+should remove the snippet of code.
+
+### jQuery CDN for jQuery
+
+The jQuery CDN version of the jQuery JavaScript library is referenced towards
+the bottom of the page. A local fallback of jQuery is included for rare instances
+when the CDN version might not be available, and to facilitate offline
+development.
+
+The jQuery CDN version was chosen over other potential candidates
+([like Google's Hosted Libraries](https://developers.google.com/speed/libraries/))
+because it's fast ([comparable or faster than Google by some
+measures](https://www.cdnperf.com/#jsdelivr,cdnjs,google,yandex,microsoft,jquery,bootstrapcdn/https/90))
+and, (unlike Google's CDN) is available to China's hundreds of millions of internet users.
+For many years we [chose](https://github.com/h5bp/html5-boilerplate/issues/1191)
+the Google Hosted version over the jQuery CDN because it was available
+over HTTPS (the jQuery CDN was not,) and it offered a better chance of
+hitting the cache lottery owing to the popularity of the Google CDN.
+The first issue is no longer valid and the second is far outweighed by
+being able to serve jQuery to Chinese users.
+
+While the jQuery CDN is a strong default solution your site or application may
+require a different configuration. Testing your site with services like
+[WebPageTest](https://www.webpagetest.org/) and browser tools like
+[PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/) or
+[YSlow](https://developer.yahoo.com/yslow/) will help you examine the real
+world performance of your site and can show where you can optimize your specific
+site or application.
+
+### Google Universal Analytics Tracking Code
+
+Finally, an optimized version of the Google Universal Analytics tracking code is
+included. Google recommends that this script be placed at the top of the page.
+Factors to consider: if you place this script at the top of the page, you’ll
+be able to count users who don’t fully load the page, and you’ll incur the max
+number of simultaneous connections of the browser.
+
+Further information:
+
+* [Optimizing the Google Universal Analytics
+ Snippet](https://mathiasbynens.be/notes/async-analytics-snippet#universal-analytics)
+* [Introduction to
+ Analytics.js](https://developers.google.com/analytics/devguides/collection/analyticsjs/)
+* [Google Analytics Demos & Tools](https://ga-dev-tools.appspot.com/)
+
+**N.B.** The Google Universal Analytics snippet is included by default mainly
+because Google Analytics is [currently one of the most popular tracking
+solutions](https://trends.builtwith.com/analytics/Google-Analytics) out there.
+However, its usage isn't set in stone, and you SHOULD consider exploring the
+[alternatives](https://en.wikipedia.org/wiki/List_of_web_analytics_software)
+and use whatever suits your needs best!
diff --git a/TP1/src/doc/js.md b/TP1/src/doc/js.md
new file mode 100644
index 0000000..1c30b55
--- /dev/null
+++ b/TP1/src/doc/js.md
@@ -0,0 +1,37 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# The JavaScript
+
+Information about the default JavaScript included in the project.
+
+## main.js
+
+This file can be used to contain or reference your site/app JavaScript code.
+For larger projects, you can make use of a JavaScript module loader, like
+[Require.js](http://requirejs.org/), to load any other scripts you need to
+run.
+
+## plugins.js
+
+This file can be used to contain all your plugins, such as jQuery plugins and
+other 3rd party scripts.
+
+One approach is to put jQuery plugins inside of a `(function($){ ...
+})(jQuery);` closure to make sure they're in the jQuery namespace safety
+blanket. Read more about [jQuery plugin
+authoring](https://learn.jquery.com/plugins/#Getting_Started).
+
+By default the `plugins.js` file contains a small script to avoid `console`
+errors in browsers that lack a `console`. The script will make sure that, if
+a console method isn't available, that method will have the value of empty
+function, thus, preventing the browser from throwing an error.
+
+
+## vendor
+
+This directory can be used to contain all 3rd party library code.
+
+Minified versions of the latest jQuery and Modernizr libraries are included by
+default. You may wish to create your own [custom Modernizr
+build](http://www.modernizr.com/download/).
diff --git a/TP1/src/doc/misc.md b/TP1/src/doc/misc.md
new file mode 100644
index 0000000..cf5409a
--- /dev/null
+++ b/TP1/src/doc/misc.md
@@ -0,0 +1,178 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# Miscellaneous
+
+* [.gitignore](#gitignore)
+* [.editorconfig](#editorconfig)
+* [Server Configuration](#server-configuration)
+* [crossdomain.xml](#crossdomainxml)
+* [robots.txt](#robotstxt)
+* [browserconfig.xml](#browserconfigxml)
+
+--
+
+## .gitignore
+
+HTML5 Boilerplate includes a basic project-level `.gitignore`. This should
+primarily be used to avoid certain project-level files and directories from
+being kept under source control. Different development-environments will
+benefit from different collections of ignores.
+
+OS-specific and editor-specific files should be ignored using a "global
+ignore" that applies to all repositories on your system.
+
+For example, add the following to your `~/.gitconfig`, where the `.gitignore`
+in your HOME directory contains the files and directories you'd like to
+globally ignore:
+
+```gitignore
+[core]
+ excludesfile = ~/.gitignore
+```
+
+* More on global ignores: https://help.github.com/articles/ignoring-files
+* Comprehensive set of ignores on GitHub: https://github.com/github/gitignore
+
+
+## .editorconfig
+
+The `.editorconfig` file is provided in order to encourage and help you and
+your team define and maintain consistent coding styles between different
+editors and IDEs.
+
+By default, `.editorconfig` includes some basic
+[properties](http://editorconfig.org/#supported-properties) that reflect the
+coding styles from the files provided by default, but you can easily change
+them to better suit your needs.
+
+In order for your editor/IDE to apply the
+[properties](http://editorconfig.org/#supported-properties) from the
+`.editorconfig` file, you will need to [install a
+plugin]( http://editorconfig.org/#download).
+
+__N.B.__ If you aren't using the server configurations provided by HTML5
+Boilerplate, we highly encourage you to configure your server to block
+access to `.editorconfig` files, as they can disclose sensitive information!
+
+For more details, please refer to the [EditorConfig
+project](http://editorconfig.org/).
+
+
+## Server Configuration
+
+H5BP includes a [`.htaccess`](#htaccess) file for the [Apache HTTP
+server](https://httpd.apache.org/docs/). If you are not using Apache
+as your web server, then you are encouraged to download a
+[server configuration](https://github.com/h5bp/server-configs) that
+corresponds to your web server and environment.
+
+A `.htaccess` (hypertext access) file is a [Apache HTTP server
+configuration file](https://github.com/h5bp/server-configs-apache).
+The `.htaccess` file is mostly used for:
+
+* Rewriting URLs
+* Controlling cache
+* Authentication
+* Server-side includes
+* Redirects
+* Gzipping
+
+If you have access to the main server configuration file (usually called
+`httpd.conf`), you should add the logic from the `.htaccess` file in, for
+example, a section in the main configuration file. This is usually
+the recommended way, as using .htaccess files slows down Apache!
+
+To enable Apache modules locally, please see:
+https://github.com/h5bp/server-configs-apache/wiki/How-to-enable-Apache-modules.
+
+In the repo the `.htaccess` is used for:
+
+* Allowing cross-origin access to web fonts
+* CORS header for images when browsers request it
+* Enable `404.html` as 404 error document
+* Making the website experience better for IE users better
+* Media UTF-8 as character encoding for `text/html` and `text/plain`
+* Enabling the rewrite URLs engine
+* Forcing or removing the `www.` at the begin of a URL
+* It blocks access to directories without a default document
+* It blocks access to files that can expose sensitive information.
+* It reduces MIME type security risks
+* It forces compressing (gzipping)
+* It tells the browser whether they should request a specific file from the
+ server or whether they should grab it from the browser's cache
+
+When using `.htaccess` we recommend reading all inline comments (the rules after
+a `#`) in the file once. There is a bunch of optional stuff in it.
+
+If you want to know more about the `.htaccess` file check out the
+[Apache HTTP server docs](https://httpd.apache.org/docs/) or more
+specifically the [htaccess
+section](https://httpd.apache.org/docs/current/howto/htaccess.html).
+
+Notice that the original repo for the `.htaccess` file is [this
+one](https://github.com/h5bp/server-configs-apache).
+
+
+## crossdomain.xml
+
+The _cross-domain policy file_ is an XML document that gives a web client —
+such as Adobe Flash Player, Adobe Reader, etc. — permission to handle data
+across multiple domains, by:
+
+ * granting read access to data
+ * permitting the client to include custom headers in cross-domain requests
+ * granting permissions for socket-based connections
+
+__e.g.__ If a client hosts content from a particular source domain and that
+content makes requests directed towards a domain other than its own, the remote
+domain would need to host a cross-domain policy file in order to grant access
+to the source domain and allow the client to continue with the transaction.
+
+For more in-depth information, please see Adobe's [cross-domain policy file
+specification](https://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html).
+
+
+## robots.txt
+
+The `robots.txt` file is used to give instructions to web robots on what can
+be crawled from the website.
+
+By default, the file provided by this project includes the next two lines:
+
+ * `User-agent: *` - the following rules apply to all web robots
+ * `Disallow:` - everything on the website is allowed to be crawled
+
+If you want to disallow certain pages you will need to specify the path in a
+`Disallow` directive (e.g.: `Disallow: /path`) or, if you want to disallow
+crawling of all content, use `Disallow: /`.
+
+The `/robots.txt` file is not intended for access control, so don't try to
+use it as such. Think of it as a "No Entry" sign, rather than a locked door.
+URLs disallowed by the `robots.txt` file might still be indexed without being
+crawled, and the content from within the `robots.txt` file can be viewed by
+anyone, potentially disclosing the location of your private content! So, if
+you want to block access to private content, use proper authentication instead.
+
+For more information about `robots.txt`, please see:
+
+ * [robotstxt.org](http://www.robotstxt.org/)
+ * [How Google handles the `robots.txt` file](https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt)
+
+
+## browserconfig.xml
+
+The `browserconfig.xml` file is used to customize the tile displayed when users
+pin your site to the Windows 8.1 start screen. In there you can define custom
+tile colors, custom images or even [live tiles](https://msdn.microsoft.com/en-us/library/ie/dn455106.aspx#CreatingLiveTiles).
+
+By default, the file points to 2 placeholder tile images:
+
+* `tile.png` (558x558px): used for `Small`, `Medium` and `Large` tiles.
+ This image resizes automatically when necessary.
+* `tile-wide.png` (558x270px): user for `Wide` tiles.
+
+Notice that IE11 uses the same images when adding a site to the `favorites`.
+
+For more in-depth information about the `browserconfig.xml` file, please
+see [MSDN](https://msdn.microsoft.com/en-us/library/ie/dn320426.aspx).
diff --git a/TP1/src/doc/usage.md b/TP1/src/doc/usage.md
new file mode 100644
index 0000000..b8fc360
--- /dev/null
+++ b/TP1/src/doc/usage.md
@@ -0,0 +1,130 @@
+[HTML5 Boilerplate homepage](https://html5boilerplate.com) | [Documentation
+table of contents](TOC.md)
+
+# Usage
+
+Once you have cloned or downloaded HTML5 Boilerplate, creating a site or app
+usually involves the following:
+
+1. Set up the basic structure of the site.
+2. Add some content, style, and functionality.
+3. Run your site locally to see how it looks.
+4. (Optionally run a build script to automate the optimization of your site -
+ e.g. [ant build script](https://github.com/h5bp/ant-build-script))
+5. Deploy your site.
+
+
+## Basic structure
+
+A basic HTML5 Boilerplate site initially looks something like this:
+
+```
+.
+├── css
+│ ├── main.css
+│ └── normalize.css
+├── doc
+├── img
+├── js
+│ ├── main.js
+│ ├── plugins.js
+│ └── vendor
+│ ├── jquery.min.js
+│ └── modernizr.min.js
+├── .editorconfig
+├── .htaccess
+├── 404.html
+├── apple-touch-icon.png
+├── browserconfig.xml
+├── index.html
+├── humans.txt
+├── robots.txt
+├── crossdomain.xml
+├── favicon.ico
+├── tile-wide.png
+└── tile.png
+```
+
+What follows is a general overview of each major part and how to use them.
+
+### css
+
+This directory should contain all your project's CSS files. It includes some
+initial CSS to help get you started from a solid foundation. [About the
+CSS](css.md).
+
+### doc
+
+This directory contains all the HTML5 Boilerplate documentation. You can use it
+as the location and basis for your own project's documentation.
+
+### js
+
+This directory should contain all your project's JS files. Libraries, plugins,
+and custom code can all be included here. It includes some initial JS to help
+get you started. [About the JavaScript](js.md).
+
+### .htaccess
+
+The default web server configs are for Apache. For more information, please
+refer to the [Apache Server Configs
+repository](https://github.com/h5bp/server-configs-apache).
+
+Host your site on a server other than Apache? You're likely to find the
+corresponding server configs project listed in our [Server Configs
+](https://github.com/h5bp/server-configs/blob/master/README.md) repository.
+
+### 404.html
+
+A helpful custom 404 to get you started.
+
+### browserconfig.xml
+
+This file contains all settings regarding custom tiles for IE11.
+
+For more info on this topic, please refer to
+[MSDN](https://msdn.microsoft.com/en-us/library/ie/dn455106.aspx).
+
+### .editorconfig
+
+The `.editorconfig` file is provided in order to encourage and help you and
+your team to maintain consistent coding styles between different
+editors and IDEs. [Read more about the `.editorconfig` file](misc.md#editorconfig).
+
+### index.html
+
+This is the default HTML skeleton that should form the basis of all pages on
+your site. If you are using a server-side templating framework, then you will
+need to integrate this starting HTML with your setup.
+
+Make sure that you update the URLs for the referenced CSS and JavaScript if you
+modify the directory structure at all.
+
+If you are using Google Universal Analytics, make sure that you edit the
+corresponding snippet at the bottom to include your analytics ID.
+
+### humans.txt
+
+Edit this file to include the team that worked on your site/app, and the
+technology powering it.
+
+### robots.txt
+
+Edit this file to include any pages you need hidden from search engines.
+
+### crossdomain.xml
+
+A template for working with cross-domain requests. [About
+crossdomain.xml](misc.md#crossdomainxml).
+
+### Icons
+
+Replace the default `favicon.ico`, `tile.png`, `tile-wide.png` and Apple
+Touch Icon with your own.
+
+If you want to use different Apple Touch Icons for different resolutions please
+refer to the [according documentation](extend.md#apple-touch-icons).
+
+You might want to check out Hans' handy [HTML5 Boilerplate Favicon and Apple
+Touch Icon
+PSD-Template](https://drublic.de/blog/html5-boilerplate-favicons-psd-template/).
diff --git a/TP1/src/favicon.ico b/TP1/src/favicon.ico
new file mode 100644
index 0000000..be74abd
Binary files /dev/null and b/TP1/src/favicon.ico differ
diff --git a/TP1/src/humans.txt b/TP1/src/humans.txt
new file mode 100644
index 0000000..8d2330f
--- /dev/null
+++ b/TP1/src/humans.txt
@@ -0,0 +1,15 @@
+# humanstxt.org/
+# The humans responsible & technology colophon
+
+# TEAM
+
+ -- --
+
+# THANKS
+
+
+
+# TECHNOLOGY COLOPHON
+
+ CSS3, HTML5
+ Apache Server Configs, jQuery, Modernizr, Normalize.css
diff --git a/TP1/src/img/.gitignore b/TP1/src/img/.gitignore
new file mode 100644
index 0000000..e69de29
diff --git a/TP1/src/img/9545a00df89565676729ab86077aaa21_large.jpeg b/TP1/src/img/9545a00df89565676729ab86077aaa21_large.jpeg
new file mode 100644
index 0000000..d627b0e
Binary files /dev/null and b/TP1/src/img/9545a00df89565676729ab86077aaa21_large.jpeg differ
diff --git a/TP1/src/img/Chat-et-citation.jpg b/TP1/src/img/Chat-et-citation.jpg
new file mode 100644
index 0000000..38bce7f
Binary files /dev/null and b/TP1/src/img/Chat-et-citation.jpg differ
diff --git a/TP1/src/img/images.jpeg b/TP1/src/img/images.jpeg
new file mode 100644
index 0000000..66e64b8
Binary files /dev/null and b/TP1/src/img/images.jpeg differ
diff --git a/TP1/src/img/inception_cinema_slide.jpg b/TP1/src/img/inception_cinema_slide.jpg
new file mode 100644
index 0000000..3fd53ae
Binary files /dev/null and b/TP1/src/img/inception_cinema_slide.jpg differ
diff --git a/TP1/src/img/toupie.gif b/TP1/src/img/toupie.gif
new file mode 100644
index 0000000..182cbe7
Binary files /dev/null and b/TP1/src/img/toupie.gif differ
diff --git a/TP1/src/img/trollface.png b/TP1/src/img/trollface.png
new file mode 100644
index 0000000..5e3b949
Binary files /dev/null and b/TP1/src/img/trollface.png differ
diff --git a/TP1/src/index.html b/TP1/src/index.html
new file mode 100644
index 0000000..90743e2
--- /dev/null
+++ b/TP1/src/index.html
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Hello world! This is HTML5 Boilerplate.
+
+
+
+
+
+
+
+
+
+
diff --git a/TP1/src/js/main.js b/TP1/src/js/main.js
new file mode 100644
index 0000000..e69de29
diff --git a/TP1/src/js/plugins.js b/TP1/src/js/plugins.js
new file mode 100644
index 0000000..f887480
--- /dev/null
+++ b/TP1/src/js/plugins.js
@@ -0,0 +1,24 @@
+// Avoid `console` errors in browsers that lack a console.
+(function() {
+ var method;
+ var noop = function () {};
+ var methods = [
+ 'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error',
+ 'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log',
+ 'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd',
+ 'timeline', 'timelineEnd', 'timeStamp', 'trace', 'warn'
+ ];
+ var length = methods.length;
+ var console = (window.console = window.console || {});
+
+ while (length--) {
+ method = methods[length];
+
+ // Only stub undefined methods.
+ if (!console[method]) {
+ console[method] = noop;
+ }
+ }
+}());
+
+// Place any jQuery/helper plugins in here.
diff --git a/TP1/src/js/vendor/modernizr-2.8.3.min.js b/TP1/src/js/vendor/modernizr-2.8.3.min.js
new file mode 100644
index 0000000..81aafb7
--- /dev/null
+++ b/TP1/src/js/vendor/modernizr-2.8.3.min.js
@@ -0,0 +1,4 @@
+/* Modernizr 2.8.3 (Custom Build) | MIT & BSD
+ * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load
+ */
+;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d',a,""].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(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=w.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(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?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)){"img"!=a&&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=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?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),"img"!=a&&(r||2===y[c]?(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("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&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&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},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
+
+
+
+ Site Test
+
+
+
+
+
+
+
Bonjour et bienvenue sur mon site de test ! Ce n'est que le début Soyez indulgents..