<commit_before><html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <link rel="shortcut icon" type="image/x-icon" href="favicon.ico">
        <title>Relay Chess</title>

        <script src="https://use.fontawesome.com/34e85c6daf.js"></script>

        <link rel="stylesheet" href="styles/example.css">
        <link rel="stylesheet" href="assets/base.css">
        <link rel="stylesheet" href="assets/theme.css">
        <link rel="stylesheet" href="assets/desktop.css">

        <link rel="stylesheet" href="styles/base.css">
        <link rel="stylesheet" href="styles/forms.css">
        <link rel="stylesheet" href="styles/quotes.css">

        <link rel="stylesheet" href="styles/game.css">
        <link rel="stylesheet" href="styles/promote.css">

        <!-- Angular Modal Service Style-->
        <link rel="stylesheet" href="styles/modal.css">

        <script src="http://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>

        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-route.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/ngStorage/0.3.6/ngStorage.min.js"></script>
        <script src="js/angularModalService.js"></script>

        <script src="https://cdn.socket.io/socket.io-1.4.5.js"></script>

        <script src="js/chessground.min.js"></script>
        <script src="js/chess.js"></script>

        <!-- RelayChessApp -->
        <script src="js/app/config.js"></script>
        <script src="js/app/relayChessService.js"></script>
        <script src="js/app/loginController.js"></script>
        <script src="js/app/lobbyController.js"></script>
        <script src="js/app/playController.js"></script>
        <script src="js/app/seekModalController.js"></script>
        <script src="js/app/minuteFilter.js"></script>
    </head>

    <body ng-app="relayApp">
        <div class="torch left"></div>
        <div class="torch right"></div>

        <div id="logo" class="center"></div>

        <!-- Login -->
        <script type="text/ng-template" id="login.html">
        <div class="flex-center-column center" style="position: relative;">
            <div class="flex-block animated fadeIn" style="width: 390px; margin-bottom: 100px;">
                <p class="login-header">Login</p>
                <p class="login-header sub-error">{{message}}</p>
                <form novalidate>
                    <input class="inp-border" type="text" ng-model="user.name" placeholder="Name"/><br />
                    <input class="inp-border" type="password" ng-model="user.password" placeholder="Password"/><br />
                    <input type="submit" class="btn-border btn-big" style="margin-top:20px; float: left;" ng-click="tryLogin(user)" ng-disabled="requestActive" ng-class="{disabled: requestActive}" value="Login" />
                    <input type="submit" class="btn-forgot" style="margin-top:20px; float: right;" ng-click="showRegister()" value="Don't have an account yet?" />
                </form>
            </div>
        </div>
        </script>

        <!-- Register -->
        <script type="text/ng-template" id="register.html">
            <div class="flex-center-column center" style="position: relative;">
                <div class="flex-block animated fadeIn" style="width: 390px; margin-bottom: 100px;">
                    <p class="login-header">Register</p>
                    <p class="login-header sub-error">{{message}}</p>
                    <form novalidate>
                        <input class="inp-border" type="text" ng-model="user.name" placeholder="Name"/><br />
                        <input class="inp-border" type="password" ng-model="user.password" placeholder="Password"/><br />
                        <input type="submit" class="btn-border btn-big yellow" style="margin-top:20px; float: left;" ng-click="trySignup(user)" ng-disabled="requestActive" ng-class="{disabled: requestActive}" value="Register" />
                        <input type="submit" class="btn-forgot" style="margin-top:20px; float: right;" ng-click="showLogin()" value="Already have an account?" />
                    </form>
                </div>
            </div>
        </script>

        <!-- Lobby -->
        <script type="text/ng-template" id="lobby.html">
            <div style="display:flex; margin-top:30px; justify-content: center;">
                <div style="width:250px; margin-right:10px; flex:0 0 auto;">
                    <div class="panel" style="height: 400px; overflow: auto; overflow-x: hidden;">
                        <div style="margin-top: 10px;">{{relayChess.users.length}} Player{{relayChess.users.length!=1?"s":""}} online</div>
                        <div style="display:flex; margin-left:10px; margin-right:10px;" ng-repeat="user in (relayChess.users | orderBy: 'rating' : true)">
                            <div style="color: #d5ac34; flex:0 0 auto; margin-right: 5px;">{{user.title}}</div>
                            <div style="flex:0 0 auto;">{{user.displayName}}</div>
                            <div style="flex:1 0 auto; text-align: right;">{{user.rating}}</div>
                        </div>
                    </div>
                </div>

                <div style="width:500px; flex:0 0 auto;">
                    <div class="panel" style="min-height: 200px;">
                        <div class="seek-base" ng-repeat="seek in relayChess.seeks" ng-class-odd="'odd'" ng-click="answerSeek(seek.name)" ng-class="{'self':(seek.name == userToken.name)}">
                            <div style="display:flex; margin-left: 10px; margin-right: 10px;">
                                <div style="flex:0 0 auto; width: 30%; text-align: left;">
                                    <div style="display:inline-block; color: #d5ac34;">{{seek.title}}</div>
                                    <div style="display:inline-block;">{{seek.displayName}}</div>
                                </div><commit_msg>Add rules (improve formatting later)<commit_after><html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <link rel="shortcut icon" type="image/x-icon" href="favicon.ico">
        <title>Relay Chess</title>

        <script src="https://use.fontawesome.com/34e85c6daf.js"></script>

        <link rel="stylesheet" href="styles/example.css">
        <link rel="stylesheet" href="assets/base.css">
        <link rel="stylesheet" href="assets/theme.css">
        <link rel="stylesheet" href="assets/desktop.css">

        <link rel="stylesheet" href="styles/base.css">
        <link rel="stylesheet" href="styles/forms.css">
        <link rel="stylesheet" href="styles/quotes.css">

        <link rel="stylesheet" href="styles/game.css">
        <link rel="stylesheet" href="styles/promote.css">

        <!-- Angular Modal Service Style-->
        <link rel="stylesheet" href="styles/modal.css">

        <script src="http://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>

        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-route.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/ngStorage/0.3.6/ngStorage.min.js"></script>
        <script src="js/angularModalService.js"></script>

        <script src="https://cdn.socket.io/socket.io-1.4.5.js"></script>

        <script src="js/chessground.min.js"></script>
        <script src="js/chess.js"></script>

        <!-- RelayChessApp -->
        <script src="js/app/config.js"></script>
        <script src="js/app/relayChessService.js"></script>
        <script src="js/app/loginController.js"></script>
        <script src="js/app/lobbyController.js"></script>
        <script src="js/app/playController.js"></script>
        <script src="js/app/seekModalController.js"></script>
        <script src="js/app/minuteFilter.js"></script>
    </head>

    <body ng-app="relayApp">
        <div class="torch left"></div>
        <div class="torch right"></div>

        <div id="logo" class="center"></div>

        <!-- Login -->
        <script type="text/ng-template" id="login.html">
        <div class="flex-center-column center" style="position: relative;">
            <div class="flex-block animated fadeIn" style="width: 390px; margin-bottom: 100px;">
                <p class="login-header">Login</p>
                <p class="login-header sub-error">{{message}}</p>
                <form novalidate>
                    <input class="inp-border" type="text" ng-model="user.name" placeholder="Name"/><br />
                    <input class="inp-border" type="password" ng-model="user.password" placeholder="Password"/><br />
                    <input type="submit" class="btn-border btn-big" style="margin-top:20px; float: left;" ng-click="tryLogin(user)" ng-disabled="requestActive" ng-class="{disabled: requestActive}" value="Login" />
                    <input type="submit" class="btn-forgot" style="margin-top:20px; float: right;" ng-click="showRegister()" value="Don't have an account yet?" />
                </form>
            </div>
        </div>
        </script>

        <!-- Register -->
        <script type="text/ng-template" id="register.html">
            <div class="flex-center-column center" style="position: relative;">
                <div class="flex-block animated fadeIn" style="width: 390px; margin-bottom: 100px;">
                    <p class="login-header">Register</p>
                    <p class="login-header sub-error">{{message}}</p>
                    <form novalidate>
                        <input class="inp-border" type="text" ng-model="user.name" placeholder="Name"/><br />
                        <input class="inp-border" type="password" ng-model="user.password" placeholder="Password"/><br />
                        <input type="submit" class="btn-border btn-big yellow" style="margin-top:20px; float: left;" ng-click="trySignup(user)" ng-disabled="requestActive" ng-class="{disabled: requestActive}" value="Register" />
                        <input type="submit" class="btn-forgot" style="margin-top:20px; float: right;" ng-click="showLogin()" value="Already have an account?" />
                    </form>
                </div>
            </div>
        </script>

        <!-- Lobby -->
        <script type="text/ng-template" id="lobby.html">
            <div style="display:flex; margin-top:30px; justify-content: center;">
                <div style="width:250px; margin-right:10px; flex:0 0 auto;">
                    <div class="panel" style="height: 200px; overflow: auto; overflow-x: hidden;">
                        <div style="margin-top: 10px;">{{relayChess.users.length}} Player{{relayChess.users.length!=1?"s":""}} online</div>
                        <div style="display:flex; margin-left:10px; margin-right:10px;" ng-repeat="user in (relayChess.users | orderBy: 'rating' : true)">
                            <div style="color: #d5ac34; flex:0 0 auto; margin-right: 5px;">{{user.title}}</div>
                            <div style="flex:0 0 auto;">{{user.displayName}}</div>
                            <div style="flex:1 0 auto; text-align: right;">{{user.rating}}</div>
                        </div>
                    </div>
                    <div class="panel" style="height: 200px; overflow: auto; overflow-x: hidden;">
                        <ol>
                            <li>Pieces (including the King, but not pawns), in addition to their natural(*) powers, inherit movement from the natural powers of any piece which currently protects them.</li>
                            <li>Castling is only performed by moving the King (and not pieces protected by the King) on top of the castling Rook (and not pieces protected by a Rook).</li>
                            <li>All other rules of chess are observed</li>
                        </ol>
                        (*) natural powers are movements naturally accorded to a piece and not those inherited from protecting pieces.
                    </div>
                </div>

                <div style="width:500px; flex:0 0 auto;">
                    <div class="panel" style="min-height: 200px;">
                        <div class="seek-base" ng-repeat="seek in relayChess.seeks" ng-class-odd="'odd'" ng-click="answerSeek(seek.name)" ng-class="{'self':(seek.name == userToken.name)}">
                            <div style="display:flex; margin-left: 10px; margin-right: 10px;">
                                <div style="flex:0 0 auto; width: 30%; text-align: left;">
                                    <div style="display:inline-block; color: #d5ac34;">{{seek.title}}</div>
                                    <div style="display:inline-block;">{{seek.displayName}}</div>
                                </div>
{'fraction_non_alphanumeric': 0.17316811993269085, 'fraction_numerical': 0.013844271072357351, 'mean_word_length': 2.2420034713612695, 'pattern_counts': {'":': 2, '<': 259, '<?xml version=': 0, '>': 259, 'https://': 10, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4784472', 'n_tokens_mistral': 3980, 'n_tokens_neox': 3672, 'n_words': 719}