CINXE.COM

drafts: graph

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <link rel="icon" href="/drafts/static/hgicon.png" type="image/png" /> <meta name="robots" content="index, nofollow"/> <link rel="stylesheet" href="/drafts/static/style-monoblue.css" type="text/css" /> <script type="text/javascript" src="/drafts/static/mercurial.js"></script> <title>drafts: graph</title> <link rel="alternate" type="application/atom+xml" href="/drafts/atom-log" title="Atom feed for drafts"/> <link rel="alternate" type="application/rss+xml" href="/drafts/rss-log" title="RSS feed for drafts"/> <!--[if IE]><script type="text/javascript" src="/drafts/static/excanvas.js"></script><![endif]--> </head> <body> <div id="container"> <div class="page-header"> <h1 class="breadcrumb"><a href="/">Mercurial</a> &gt; <a href="/drafts">drafts</a> / graph</h1> <form action="/drafts/log"> <dl class="search"> <dt><label>Search: </label></dt> <dd><input type="text" name="rev" /></dd> </dl> </form> <ul class="page-nav"> <li><a href="/drafts/summary">summary</a></li> <li><a href="/drafts/shortlog">shortlog</a></li> <li><a href="/drafts/changelog">changelog</a></li> <li class="current">graph</li> <li><a href="/drafts/tags">tags</a></li> <li><a href="/drafts/bookmarks">bookmarks</a></li> <li><a href="/drafts/branches">branches</a></li> <li><a href="/drafts/file/00fbbb9dea0c">files</a></li> <li><a href="/drafts/help">help</a></li> </ul> </div> <h2 class="no-link no-border">graph</h2> <div id="noscript">The revision graph only works with JavaScript-enabled browsers.</div> <div id="wrapper"> <ul id="nodebgs"></ul> <canvas id="graph" width="480" height="2352"></canvas> <ul id="graphnodes"></ul> </div> <script> <!-- hide script content document.getElementById('noscript').style.display = 'none'; var data = [["00fbbb9dea0c", [0, 1], [[0, 0, 1, -1, ""]], "[css-contain-1] Add bikeshed wpt info", "Florian Rivoal", "2018-09-28", ["default", false], [], []], ["fa4899b34567", [1, 2], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""]], "[selectors-4] Clarify that arguments allow whitespace as normal.", "Tab Atkins-Bittner", "2018-09-28", ["default", false], [], []], ["083a5f642f17", [1, 2], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""]], "[selectors-4] Whoops, attr-selectors allow whitespace between any of their tokens. Fixes #3151.", "Tab Atkins-Bittner", "2018-09-28", ["default", false], [], []], ["235d33a6e6b5", [1, 2], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [1, 2, 2, -1, ""]], "Merge pull request #2997 from majido/merge-ob-repo", "Tab Atkins Jr", "2018-09-28", ["default", false], [], []], ["c3d5907913e6", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [2, 3, 3, -1, ""]], "Merge wicg/overscroll-behavior project", "Majid Valipour", "2018-09-25", ["default", false], [], []], ["c53dea1c96bb", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [3, 3, 4, -1, ""]], "Move to sub-directory in preparation to move", "Majid Valipour", "2018-07-31", ["default", false], [], []], ["f8d47222a006", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [3, 3, 4, -1, ""]], "Fix links", "Martin Thomson", "2017-11-28", ["default", false], [], []], ["ee110fcf15a3", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [3, 3, 4, -1, ""]], "Update README with correct link to Draft Spec page", "Amir R Muntasser", "2017-11-14", ["default", false], [], []], ["17835e37a95b", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [2, 3, 3, -1, ""], [3, 4, 4, -1, ""]], "Merge pull request #26 from WICG/update-README-overscroll", "Majid Valipour", "2017-10-31", ["default", false], [], []], ["7f75fd5502e7", [3, 5], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [3, 2, 5, -1, ""], [4, 3, 4, -1, ""]], "Update README to use overscroll-behavior", "Majid Valipour", "2017-10-31", ["default", false], [], []], ["9b51e07fba86", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [3, 3, 4, -1, ""]], "Rename scroll-boundary-behavior to overscroll-behavior", "Majid Valipour", "2017-10-24", ["default", false], [], []], ["4b53e8202adb", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [2, 3, 3, -1, ""], [3, 4, 4, -1, ""]], "Merge pull request #23 from majido/fix-repo", "Majid Valipour", "2017-10-12", ["default", false], [], []], ["078762c34647", [3, 6], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [3, 2, 6, -1, ""], [4, 3, 4, -1, ""]], "Specify Repository metadata", "Majid Valipour", "2017-10-12", ["default", false], [], []], ["1cadd950fc5a", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [2, 3, 3, -1, ""], [3, 4, 4, -1, ""]], "Merge pull request #19 from ewilligers/shorthand-syntax", "Majid Valipour", "2017-09-11", ["default", false], [], []], ["e5eb3cd0dbcb", [3, 7], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [3, 3, 7, -1, ""], [4, 4, 4, -1, ""]], "Shorthand syntax when -x and -y values distinct", "Eric Willigers", "2017-09-11", ["default", false], [], []], ["d0006a942cc2", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 3, 3, -1, ""], [2, 2, 3, -1, ""], [3, 3, 7, -1, ""], [4, 4, 4, -1, ""]], "Merge pull request #17 from ewilligers/longhand-as-specified", "Majid Valipour", "2017-09-11", ["default", false], [], []], ["8398546fe8b1", [2, 3], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 3, -1, ""], [3, 2, 7, -1, ""], [4, 3, 4, -1, ""]], "Computed value as specified for longhands", "Eric Willigers", "2017-09-11", ["default", false], [], []], ["d3bf34e9ae36", [2, 7], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [2, 3, 7, -1, ""], [3, 4, 4, -1, ""]], "Merge pull request #16 from majido/add-usecases", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["81394185afc7", [3, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 3, 8, -1, ""], [4, 4, 4, -1, ""]], "Update example wording to address feedback", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["2357eeeb08d6", [3, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 2, 8, -1, ""], [3, 3, 8, -1, ""], [4, 4, 4, -1, ""]], "Merge remote-tracking branch 'wicg/master' into add-usecases", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["2f5781ed5f27", [3, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 3, 8, -1, ""], [4, 4, 4, -1, ""]], "Add motivating examples", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["14b2bf5e847a", [2, 7], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [2, 3, 7, -1, ""], [3, 4, 8, -1, ""], [4, 5, 4, -1, ""]], "Merge pull request #15 from majido/fix-link-issues", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["b3168fe8687d", [3, 9], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 3, 9, -1, ""], [4, 4, 8, -1, ""], [5, 5, 4, -1, ""]], "Add id for security privacy section", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["5b039c9b6f9d", [3, 9], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 2, 9, -1, ""], [3, 3, 9, -1, ""], [4, 3, 8, -1, ""], [5, 4, 4, -1, ""]], "Merge remote-tracking branch 'wicg/master' into fix-link-issues", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["607b062dae3f", [3, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 3, 8, -1, ""], [4, 4, 4, -1, ""]], "Fix link issues", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["ab693495e88d", [2, 7], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [2, 3, 7, -1, ""], [3, 4, 8, -1, ""], [4, 5, 4, -1, ""]], "Merge pull request #14 from majido/correction-contain", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["8b429efad087", [3, 10], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 2, 10, -1, ""], [3, 3, 10, -1, ""], [4, 4, 8, -1, ""], [5, 5, 4, -1, ""]], "Merge branch 'master' into correction-contain", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["4472ac6f3828", [3, 10], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 3, 10, -1, ""], [4, 3, 8, -1, ""], [5, 4, 4, -1, ""]], "Clarify that contain prevents navigation.", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["cac10fa7ff47", [2, 7], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [2, 3, 7, -1, ""], [3, 4, 8, -1, ""], [4, 5, 4, -1, ""]], "Merge pull request #12 from majido/security-considerations", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["e4b0e9a2d4a5", [3, 11], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 3, 11, -1, ""], [4, 4, 8, -1, ""], [5, 5, 4, -1, ""]], "Remove old file", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["2655ca94bd1b", [3, 11], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 3, 11, -1, ""], [4, 4, 8, -1, ""], [5, 5, 4, -1, ""]], "Add security privacy section to the spec", "Majid Valipour", "2017-09-07", ["default", false], [], []], ["b48b84866945", [3, 11], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 3, 11, -1, ""], [4, 3, 8, -1, ""], [5, 4, 4, -1, ""]], "Anwser security privacy questionnare", "Majid Valipour", "2017-09-06", ["default", false], [], []], ["03d0c1da0e65", [2, 7], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 3, 7, -1, ""], [2, 2, 7, -1, ""], [3, 3, 8, -1, ""], [4, 4, 4, -1, ""]], "Merge pull request #11 from majido/update-readme", "Benoit Girard", "2017-09-06", ["default", false], [], []], ["0dfd030da2d3", [2, 7], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 7, -1, ""], [3, 2, 8, -1, ""], [4, 3, 4, -1, ""]], "Update README title and add link to specification", "Majid Valipour", "2017-09-06", ["default", false], [], []], ["7b110ffa769a", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 3, 4, -1, ""]], "Issue #8: Define non-local bonudary default action", "Benoit Girard", "2017-05-08", ["default", false], [], []], ["afa22f529a14", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 3, 4, -1, ""]], "Issue #4: Use 'scroll container' instead of 'scrollable element'", "Benoit Girard", "2017-05-05", ["default", false], [], []], ["77002b28ccb4", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 3, 4, -1, ""]], "Issue #7: Be more explicit about gestures", "Benoit Girard", "2017-05-04", ["default", false], [], []], ["1cb2eaa3372b", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 3, 4, -1, ""]], "Issue 6: Add a note for programmatic scrolling", "Benoit Girard", "2017-05-04", ["default", false], [], []], ["b803fe200a08", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 3, 4, -1, ""]], "'contain' must not modify overscroll", "Benoit Girard", "2017-04-28", ["default", false], [], []], ["8f948d7c841c", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 3, 4, -1, ""]], "Initial specification draft", "Benoit Girard", "2017-04-25", ["default", false], [], []], ["5d30038b2783", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [2, 3, 8, -1, ""], [3, 4, 4, -1, ""]], "Merge pull request #2 from vdjeric/master", "Benoit Girard", "2017-04-19", ["default", false], [], []], ["973601b2e7bf", [3, 12], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 3, 12, -1, ""], [4, 4, 4, -1, ""]], "Update README.md", "Vladan Djeric", "2017-04-19", ["default", false], [], []], ["f8d92cc51ba6", [3, 12], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 2, 12, -1, ""], [4, 3, 4, -1, ""]], "Small editing changes", "Vladan Djeric", "2017-04-18", ["default", false], [], []], ["12679589eb5e", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [2, 3, 8, -1, ""], [3, 4, 4, -1, ""]], "Merge pull request #1 from vdjeric/master", "Benoit Girard", "2017-04-18", ["default", false], [], []], ["b85ac4c23b92", [3, 13], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 2, 13, -1, ""], [4, 3, 4, -1, ""]], "Typos", "Vladan Djeric", "2017-04-18", ["default", false], [], []], ["6f1afdfab7b7", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 8, -1, ""], [3, 3, 4, -1, ""]], "Fix MD for issues to file", "Benoit Girard", "2017-04-18", ["default", false], [], []], ["c98885ce0f44", [2, 8], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [3, 2, 4, -1, ""]], "Initial commit", "Benoit Girard", "2017-04-18", ["default", false], [], []], ["1aa2464ae709", [1, 2], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 4, -1, ""]], "[indexes] Mark the spec as not being leveled. Fixes #3159.", "Tab Atkins-Bittner", "2018-09-28", ["default", false], [], []], ["1568a4d80342", [1, 2], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 4, -1, ""]], "[css-will-change] Specify that we use CI matching against property names. Also add a note that unknown values are fine, since Chrome does this wrong. Fixes #3155.", "Tab Atkins-Bittner", "2018-09-28", ["default", false], [], []], ["3e874181c15c", [1, 2], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 4, -1, ""]], "[css-inline-3] Take Nat McCully's advice on ideographic character face edges.", "fantasai", "2018-09-28", ["default", false], [], []], ["2746d0b23947", [1, 2], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 4, -1, ""]], "[css-contain] Clean up normative references in preparation for publication", "Florian Rivoal", "2018-09-28", ["default", false], [], []], ["54118dfb2e00", [1, 2], [[0, 0, 1, -1, ""], [1, 1, 2, -1, ""], [2, 2, 4, -1, ""]], "[css-contain-1] Disambiguate reference", "Florian Rivoal", "2018-09-28", ["default", false], [], []], ["2e0df3634763", [1, 2], [[0, 0, 1, -1, ""], [1, 0, 2, -1, ""], [2, 1, 4, -1, ""]], "[css-contain] Mention the test suite in the changelog", "Florian Rivoal", "2018-09-28", ["default", false], [], []], ["9ce6aecc47b6", [0, 1], [[0, 0, 1, -1, ""], [1, 1, 4, -1, ""]], "[css-contain] Fix markup", "Florian Rivoal", "2018-09-28", ["default", false], [], []], ["8e3360df417e", [0, 1], [[0, 0, 1, -1, ""], [1, 1, 4, -1, ""]], "[css-contain] Define interaction of contain and SVG", "Florian Rivoal", "2018-09-28", ["default", false], [], []], ["8803ab0389bd", [0, 1], [[0, 0, 1, -1, ""], [1, 1, 4, -1, ""]], "[css-shadow-parts-1] Add more detail on IDL attributes", "Fergal Daly", "2018-09-27", ["default", false], [], []], ["e3db3cc3f76e", [0, 1], [[0, 0, 1, -1, ""], [1, 1, 4, -1, ""]], "[css-scoping-1] Define the specificity of :host/etc, per WG resolution. Closes #1915.", "Tab Atkins-Bittner", "2018-09-26", ["default", false], [], []], ["01071d339e50", [0, 1], [[0, 0, 1, -1, ""], [1, 1, 4, -1, ""]], "[css-text-3] Better metadata for anchoring term", "Florian Rivoal", "2018-09-26", ["default", false], [], []], ["6268da7d53b0", [0, 1], [[0, 0, 1, -1, ""], [1, 1, 4, -1, ""]], "[css-values-4] Define textual data types as not interpolable&gt;", "fantasai", "2018-09-26", ["default", false], [], []], ["0d855d22939f", [0, 1], [[0, 0, 1, -1, ""], [1, 1, 4, -1, ""]], "[css-transitions-1][web-animations-1] Move definitions of animation types for existing properties to Web Animations", "Brian Birtles", "2018-09-26", ["default", false], [], []]]; var graph = new Graph(); graph.scale(39); graph.vertex = function(x, y, color, parity, cur) { this.ctx.beginPath(); color = this.setColor(color, 0.25, 0.75); this.ctx.arc(x, y, radius, 0, Math.PI * 2, true); this.ctx.fill(); var bg = '<li class="bg parity' + parity + '"></li>'; var left = (this.bg_height - this.box_size) + (this.columns + 1) * this.box_size; var nstyle = 'padding-left: ' + left + 'px;'; var tagspan = ''; if (cur[7].length || cur[8].length || (cur[6][0] != 'default' || cur[6][1])) { tagspan = '<span class="logtags">'; if (cur[6][1]) { tagspan += '<span class="branchtag" title="' + cur[6][0] + '">'; tagspan += cur[6][0] + '</span> '; } else if (!cur[6][1] && cur[6][0] != 'default') { tagspan += '<span class="inbranchtag" title="' + cur[6][0] + '">'; tagspan += cur[6][0] + '</span> '; } if (cur[7].length) { for (var t in cur[7]) { var tag = cur[7][t]; tagspan += '<span class="tagtag">' + tag + '</span> '; } } if (cur[8].length) { for (var t in cur[8]) { var bookmark = cur[8][t]; tagspan += '<span class="bookmarktag">' + bookmark + '</span> '; } } tagspan += '</span>'; } var item = '<li style="' + nstyle + '"><span class="desc">'; item += '<a href="/drafts/rev/' + cur[0] + '" title="' + cur[0] + '">' + cur[3] + '</a>'; item += '</span>' + tagspan + '<span class="info">' + cur[5] + ', by ' + cur[4] + '</span></li>'; return [bg, item]; } graph.render(data); // stop hiding script --> </script> <div class="page-path"> <a href="/drafts/graph/21823?revcount=30">less</a> <a href="/drafts/graph/21823?revcount=120">more</a> | <a href="/drafts/graph/7b597c161f3e">(0)</a> <a href="/drafts/graph/7edcf16f80d0">-10000</a> <a href="/drafts/graph/21f6b0ea0286">-3000</a> <a href="/drafts/graph/29ed1c4b9001">-1000</a> <a href="/drafts/graph/e3c14c447000">-300</a> <a href="/drafts/graph/bf565ed73238">-100</a> <a href="/drafts/graph/3572cee95d05">-60</a> <a href="/drafts/graph/54d0fcdc6f22">+60</a> <a href="/drafts/graph/24f4ea62a339">+100</a> <a href="/drafts/graph/6d974cdfb3e8">+300</a> <a href="/drafts/graph/f53bc3f9effb">+1000</a> <a href="/drafts/graph/4ea0ed01519c">+3000</a> <a href="/drafts/graph/7f8d48a0cb24">+10000</a> <a href="/drafts/graph/tip">tip</a> </div> <script type="text/javascript"> ajaxScrollInit( '/drafts/graph/21823?revcount=%next%&style=monoblue', 60+60, function (htmlText, previousVal) { return previousVal + 60; }, '#wrapper', '<div class="%class%" style="text-align: center;">%text%</div>', 'graph' ); </script> <script type="text/javascript">process_dates()</script> <div class="page-footer"> <p>Mercurial Repository: drafts</p> <ul class="rss-logo"> <li><a href="/drafts/rss-log">RSS</a></li> <li><a href="/drafts/atom-log">Atom</a></li> </ul> </div> <div id="powered-by"> <p><a href="http://mercurial.selenic.com/" title="Mercurial"><img src="/drafts/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a></p> </div> <div id="corner-top-left"></div> <div id="corner-top-right"></div> <div id="corner-bottom-left"></div> <div id="corner-bottom-right"></div> </div> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10