<commit_before>div#presale-counters-slider.text-center.liquid-slider(ng-app="ethereum")
  #ethersale-charts.container
    .col-md-12
      h4.subheadline Ether sold
      #fundsChart
    .col-md-4
    .col-md-4
      a(href="#right", data-liquidslider-ref="#presale-counters-slider").fancy-black-btn Back
    .col-md-4
  div#sale-counters-container.container
    div#counters-primary.row
      h3.add-bottom-margin.show-after-end The ethereum ether sale has now concluded.
      div#total-sold-container.col-md-4.col-md-push-4
        div.inner
          h4.no-bottom-margin Total ether purchased:
          span.total
          span.total-currency-label &nbsp;ETH
          h4.subheadline.hide-after-end.add-top-margin Current price:
          #exchange-rate-container.hide-after-end
            span.amount 1 bitcoin buys&nbsp;
            span.amount.eth-to-btc 2000
            span.amount &nbsp;ether
          a#start-ether-purchase.btn-buy-ether.hide-after-end Buy Ether
      div.sale-duration-container.col-md-4.col-md-pull-4.col-sm-6.countdown-dials
        div.inner.fade-after-end
          h4 ether sale ends in:
          div.dial-container
            input(type="text", value="0").dial.days
            span.dial-label Days
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.hours
            span.dial-label Hours
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.minutes
            span.dial-label Minutes
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.seconds
            span.dial-label Seconds
      div.rate-countdown-container.col-md-4.col-sm-6.countdown-dials
        div.inner.fade-after-end
          h4 time remaining at current price:
          div.dial-container
            input(type="text", value="0").dial.days
            span.dial-label Days
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.hours

            span.dial-label Hours
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.minutes
            span.dial-label Minutes
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.seconds
            span.dial-label Seconds
          div.nextPriceInfo.hide-after-end
            span.amount next price: 1 bitcoin buys&nbsp;
            span.next-eth-to-btc 2000
            span.amount &nbsp;ether
    include presaleexplanation
  #ethersale-app
    div(ng-controller="PurchaseCtrl")
      .container
        .row
          .col-sm-3.hidden-xs
          .col-xs-12.col-sm-6
            h3 purchase ether
            .step-breadcrumbs(data-step="1")
              span.step1 info &gt;
              span.step2 purchase &gt;
              span.step3 download
          .col-xs-12.col-sm-3
            a#purchase-cancel(ng-click="reset()") &lt; cancel
        #app-steps-content.liquid-slider
          .step1-content
            form(name="purchase_form", role="form", novalidate)
              section.row
                .col-sm-2
                  p.important.text-left STEP 1
                .col-sm-10
                  p.important.text-left Enter amount to purchase in either bitcoin or ether.
                  section.row
                    .col-sm-8.col-md-6
                      .row
                        .col-sm-5.col-xs-12
                          p amount in bitcoin
                          input(type="text", name="btcToSend", ng-model="btcToSend", numeric, required, ng-min="0.01", ng-max="maxBtcToEth", ng-change="updateEthToBuy()").amount-box
                        .col-sm-2.col-xs-12.delimiter
                          span.exchange-delimiter =
                        .col-sm-5.col-xs-12
                          p amount in ether
                          input(type="text", name="ethToBuy", ng-model="ethToBuy", numeric, required, ng-min="minEthToBuy", ng-max="maxEthToBuy" ng-change="updateBtcToSend()").amount-box.eth-to-btc
                  section
                    p.text-left
                      span Price: 1 bitcoin buys&nbsp;
                      span.eth-to-btc
                      span &nbsp;ether.<br/>Minimum purchase amount is 0.01 bitcoin or&nbsp;
                      span.min-eth-to-btc
                      span &nbsp;ether, maximum purchase amount is&nbsp;
                      span.max-btc-to-buy
                      span &nbsp;bitcoin or&nbsp;
                      span.max-eth-to-buy
                      span &nbsp;ether.
              section.row
                .col-sm-2
                  p.important.text-left STEP 2
                .col-sm-10
                  p.important.text-left Enter a valid email address. Your wallet backup will be emailed to this address.
                  .row
                    .col-sm-6
                      input#purchase-email.form-control(type="email", name="email", ng-model="email", placeholder="Enter your email", required, ng-disabled="wallet.ethaddr")
                      .label-container.email
                        span(ng-class="{active: emailValid}") <i class="fa fa-{{emailValid ? 'check' : 'times'}}"></i> Valid email
                    .col-sm-6
                      input#purchase-email-repeat.form-control(type="email", name="email_repeat", ng-model="email_repeat", required, placeholder="Re-enter your email", data-match="email", ng-disabled="wallet.ethaddr")
                      .label-container.email
                        span(ng-class="{active: (!purchase_form.email_repeat.$error.required && !purchase_form.email_repeat.$error.match)}") <i class="fa fa-{{(!purchase_form.email_repeat.$error.required && !purchase_form.email_repeat.$error.match) ? 'check' : 'times'}}"></i> Confirm email
              section.row
                .col-sm-2
                  p.important.text-left STEP 3
                .col-sm-10
                  p.important.text-left Enter a passphrase. This is required to encrypt and access your wallet.
                  //- label.mini
                  //-   div Passphrase strength:
                  //-     ul#strength(check-strength="password")
                  .row
                    .col-sm-6
                      input#password.form-control(type="password", name="password", autocomplete="off", ng-model="password", required, ng-disabled="wallet.ethaddr", placeholder="Enter your passphrase", ng-class="{invalidPassword: !passwordOK}")
                      .label-container
                        ul#password-checks
                          li(ng-class="{active: passChecks.longStr}") <i class="fa fa-{{passChecks.longStr ? 'check' : 'times'}}"></i> 10+ characters
                          li(ng-class="{active: passChecks.bothCase}") <i class="fa fa-{{passChecks.bothCase ? 'check' : 'times'}}"></i> Upper and lowercase letters
                          li(ng-class="{active: passChecks.numbers}") <i class="fa fa-{{passChecks.numbers ? 'check' : 'times'}}"></i> Numbers
                          li(ng-class="{active: passChecks.symbols}") <i class="fa fa-{{passChecks.symbols ? 'check' : 'times'}}"></i> Symbols
                          //- li(ng-class="{active: passChecks.unique}") <i class="fa fa-{{passChecks.unique ? 'check' : 'times'}}"></i> Unique
                    .col-sm-6
                      input#password_repeat.form-control(type="password", name="password_repeat", autocomplete="off", ng-model="password_repeat", required, data-match="password", ng-disabled="wallet.ethaddr", placeholder="Re-enter your passphrase")
                      .label-container.email
                        span(ng-class="{active: (!purchase_form.password_repeat.$error.required && !purchase_form.password_repeat.$error.match)}") <i class="fa fa-{{(!purchase_form.password_repeat.$error.required && !purchase_form.password_repeat.$error.match) ? 'check' : 'times'}}"></i> Confirm password
              section.row
                .col-sm-2
                .col-sm-10
                  section.text-left
                    a.btn-buy-ether(ng-class="{disabled: !canCollectEntropy}", ng-click="nextStep()", href="#ethersale-app") Continue
          .step2-content
            section.row
              .col-sm-2
                p.important.text-left STEP 4
              .col-sm-10
                p.important.text-left Move your mouse around the screen to generate a random wallet,<br> and once you are done you will be moved to the next screen.
            section.row
              .col-sm-12
                #entropy-progress
                  .bar(style="width:{{entropyPercent}}%")
          .step3-content
            h4 You are about to buy
              span.eth-to-buy &nbsp;{{ethToBuy}}&nbsp;
              span ether for {{btcToSend}} bitcoin
              p.smaller.danger DO NOT CLICK CANCEL once you have sent bitcoin.
            div
              .row
                .col-sm-6.col-md-5
                  p.important STEP 5
                .clearfix
                .col-sm-6.col-md-5
                  section
                    p Send exactly {{btcToSend}} bitcoin to the address below:
                  section
                    div#qr-deposit-address
                  section.text-center
                    p Payment address:
                    span.payment-address.nowrap(href="bitcoin:{{wallet.btcaddr}}") {{wallet.btcaddr}}
                  //- section
                  //-   p.copy Send bitcoin to the above address to buy Ether. Confirmation depends on the Bitcoin network and can take many minutes.
                .col-md-2.hidden-sm
                .col-sm-6.col-md-5
                  p purchase status: {{status}}
                  .loaderHolder#confirmations-container
                    .loader Loading...
                  section.text-center
                    p Your ethereum address:
                    p.payment-address {{wallet.ethaddr}}
                .clearfix
                .col-md-12
                  section
                    p.text-center You can download your wallet using the link below.<br/>You will also be emailed a backup of this file and redirected to the final step when a transaction is detected.
                    p.text-center
                      a#downloadLinkTemp.btn-buy-ether(download="ethereum-wallet-{{wallet.ethaddr}}.json", target="_blank", ng-click="downloadWallet()", href="#") Download your wallet
          .step4-content
            a#print-purchase-page.no-print <i class="fa fa-print fa-2x"></i> print page
            h4 Thank you!
            div
              .row
                .col-sm-6.col-md-5
                  section
                    p.important.text-left Step 6: Download your wallet
                  section
                    p.copy.no-print This file represents your private key to your wallet. It is in the form of a .json file that has been encrypted with your passphrase. When the ethereum blockchain goes live you can import this file into your wallet and the balance will reflect the amount of purchased ether.
                  section
                    a#downloadLink.no-print(download="ethereum-wallet-{{wallet.ethaddr}}.json", target="_blank", ng-click="downloadWallet()", href="#") (Re-) Download your wallet
                  section
                    p.copy Recommendations
                    ol#recommendations
                      li.smaller Write down your passphrase and store it in a secure location
                      li.smaller Backup your wallet .json file on multiple secure mediums
                      li.smaller Visit our <strong><a href="https://forum.ethereum.org/" target="_blank">forums</a></strong> if you have any questions or contact us at <a href="mailto:<EMAIL>"><EMAIL></a>.
                  section
                    a#back-to-start.no-print(ng-click="reset()") Done
                .col-md-2.hidden-sm
                .col-sm-6.col-md-5
                  section
                    p.important Transaction Information
                  section
                    p.important bitcoin transaction ID:
                    p.btc-transaction-id {{transactionHash}}<commit_msg>Updated text in Step 5<commit_after>div#presale-counters-slider.text-center.liquid-slider(ng-app="ethereum")
  #ethersale-charts.container
    .col-md-12
      h4.subheadline Ether sold
      #fundsChart
    .col-md-4
    .col-md-4
      a(href="#right", data-liquidslider-ref="#presale-counters-slider").fancy-black-btn Back
    .col-md-4
  div#sale-counters-container.container
    div#counters-primary.row
      h3.add-bottom-margin.show-after-end The ethereum ether sale has now concluded.
      div#total-sold-container.col-md-4.col-md-push-4
        div.inner
          h4.no-bottom-margin Total ether purchased:
          span.total
          span.total-currency-label &nbsp;ETH
          h4.subheadline.hide-after-end.add-top-margin Current price:
          #exchange-rate-container.hide-after-end
            span.amount 1 bitcoin buys&nbsp;
            span.amount.eth-to-btc 2000
            span.amount &nbsp;ether
          a#start-ether-purchase.btn-buy-ether.hide-after-end Buy Ether
      div.sale-duration-container.col-md-4.col-md-pull-4.col-sm-6.countdown-dials
        div.inner.fade-after-end
          h4 ether sale ends in:
          div.dial-container
            input(type="text", value="0").dial.days
            span.dial-label Days
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.hours
            span.dial-label Hours
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.minutes
            span.dial-label Minutes
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.seconds
            span.dial-label Seconds
      div.rate-countdown-container.col-md-4.col-sm-6.countdown-dials
        div.inner.fade-after-end
          h4 time remaining at current price:
          div.dial-container
            input(type="text", value="0").dial.days
            span.dial-label Days
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.hours

            span.dial-label Hours
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.minutes
            span.dial-label Minutes
          span.delimiter :
          div.dial-container
            input(type="text", value="0").dial.seconds
            span.dial-label Seconds
          div.nextPriceInfo.hide-after-end
            span.amount next price: 1 bitcoin buys&nbsp;
            span.next-eth-to-btc 2000
            span.amount &nbsp;ether
    include presaleexplanation
  #ethersale-app
    div(ng-controller="PurchaseCtrl")
      .container
        .row
          .col-sm-3.hidden-xs
          .col-xs-12.col-sm-6
            h3 purchase ether
            .step-breadcrumbs(data-step="1")
              span.step1 info &gt;
              span.step2 purchase &gt;
              span.step3 download
          .col-xs-12.col-sm-3
            a#purchase-cancel(ng-click="reset()") &lt; cancel
        #app-steps-content.liquid-slider
          .step1-content
            form(name="purchase_form", role="form", novalidate)
              section.row
                .col-sm-2
                  p.important.text-left STEP 1
                .col-sm-10
                  p.important.text-left Enter amount to purchase in either bitcoin or ether.
                  section.row
                    .col-sm-8.col-md-6
                      .row
                        .col-sm-5.col-xs-12
                          p amount in bitcoin
                          input(type="text", name="btcToSend", ng-model="btcToSend", numeric, required, ng-min="0.01", ng-max="maxBtcToEth", ng-change="updateEthToBuy()").amount-box
                        .col-sm-2.col-xs-12.delimiter
                          span.exchange-delimiter =
                        .col-sm-5.col-xs-12
                          p amount in ether
                          input(type="text", name="ethToBuy", ng-model="ethToBuy", numeric, required, ng-min="minEthToBuy", ng-max="maxEthToBuy" ng-change="updateBtcToSend()").amount-box.eth-to-btc
                  section
                    p.text-left
                      span Price: 1 bitcoin buys&nbsp;
                      span.eth-to-btc
                      span &nbsp;ether.<br/>Minimum purchase amount is 0.01 bitcoin or&nbsp;
                      span.min-eth-to-btc
                      span &nbsp;ether, maximum purchase amount is&nbsp;
                      span.max-btc-to-buy
                      span &nbsp;bitcoin or&nbsp;
                      span.max-eth-to-buy
                      span &nbsp;ether.
              section.row
                .col-sm-2
                  p.important.text-left STEP 2
                .col-sm-10
                  p.important.text-left Enter a valid email address. Your wallet backup will be emailed to this address.
                  .row
                    .col-sm-6
                      input#purchase-email.form-control(type="email", name="email", ng-model="email", placeholder="Enter your email", required, ng-disabled="wallet.ethaddr")
                      .label-container.email
                        span(ng-class="{active: emailValid}") <i class="fa fa-{{emailValid ? 'check' : 'times'}}"></i> Valid email
                    .col-sm-6
                      input#purchase-email-repeat.form-control(type="email", name="email_repeat", ng-model="email_repeat", required, placeholder="Re-enter your email", data-match="email", ng-disabled="wallet.ethaddr")
                      .label-container.email
                        span(ng-class="{active: (!purchase_form.email_repeat.$error.required && !purchase_form.email_repeat.$error.match)}") <i class="fa fa-{{(!purchase_form.email_repeat.$error.required && !purchase_form.email_repeat.$error.match) ? 'check' : 'times'}}"></i> Confirm email
              section.row
                .col-sm-2
                  p.important.text-left STEP 3
                .col-sm-10
                  p.important.text-left Enter a passphrase. This is required to encrypt and access your wallet.
                  //- label.mini
                  //-   div Passphrase strength:
                  //-     ul#strength(check-strength="password")
                  .row
                    .col-sm-6
                      input#password.form-control(type="password", name="password", autocomplete="off", ng-model="password", required, ng-disabled="wallet.ethaddr", placeholder="Enter your passphrase", ng-class="{invalidPassword: !passwordOK}")
                      .label-container
                        ul#password-checks
                          li(ng-class="{active: passChecks.longStr}") <i class="fa fa-{{passChecks.longStr ? 'check' : 'times'}}"></i> 10+ characters
                          li(ng-class="{active: passChecks.bothCase}") <i class="fa fa-{{passChecks.bothCase ? 'check' : 'times'}}"></i> Upper and lowercase letters
                          li(ng-class="{active: passChecks.numbers}") <i class="fa fa-{{passChecks.numbers ? 'check' : 'times'}}"></i> Numbers
                          li(ng-class="{active: passChecks.symbols}") <i class="fa fa-{{passChecks.symbols ? 'check' : 'times'}}"></i> Symbols
                          //- li(ng-class="{active: passChecks.unique}") <i class="fa fa-{{passChecks.unique ? 'check' : 'times'}}"></i> Unique
                    .col-sm-6
                      input#password_repeat.form-control(type="password", name="password_repeat", autocomplete="off", ng-model="password_repeat", required, data-match="password", ng-disabled="wallet.ethaddr", placeholder="Re-enter your passphrase")
                      .label-container.email
                        span(ng-class="{active: (!purchase_form.password_repeat.$error.required && !purchase_form.password_repeat.$error.match)}") <i class="fa fa-{{(!purchase_form.password_repeat.$error.required && !purchase_form.password_repeat.$error.match) ? 'check' : 'times'}}"></i> Confirm password
              section.row
                .col-sm-2
                .col-sm-10
                  section.text-left
                    a.btn-buy-ether(ng-class="{disabled: !canCollectEntropy}", ng-click="nextStep()", href="#ethersale-app") Continue
          .step2-content
            section.row
              .col-sm-2
                p.important.text-left STEP 4
              .col-sm-10
                p.important.text-left Move your mouse around the screen to generate a random wallet,<br> and once you are done you will be moved to the next screen.
            section.row
              .col-sm-12
                #entropy-progress
                  .bar(style="width:{{entropyPercent}}%")
          .step3-content
            h4 You are about to buy
              span.eth-to-buy &nbsp;{{ethToBuy}}&nbsp;
              span ether for {{btcToSend}} bitcoin
              p.smaller.danger DO NOT CLICK CANCEL once you have sent bitcoin.
            div
              .row
                .col-sm-6.col-md-5
                  p.important STEP 5
                .clearfix
                .col-sm-6.col-md-5
                  section
                    p Send exactly {{btcToSend}} bitcoin to the address below:
                  section
                    div#qr-deposit-address
                  section.text-center
                    p Payment address:
                    span.payment-address.nowrap(href="bitcoin:{{wallet.btcaddr}}") {{wallet.btcaddr}}
                  //- section
                  //-   p.copy Send bitcoin to the above address to buy Ether. Confirmation depends on the Bitcoin network and can take many minutes.
                .col-md-2.hidden-sm
                .col-sm-6.col-md-5
                  p purchase status: {{status}}
                  .loaderHolder#confirmations-container
                    .loader Loading...
                  section.text-center
                    p Your ethereum address:
                    p.payment-address {{wallet.ethaddr}}
                .clearfix
                .col-md-12
                  section
                    p.text-center(style="color: red;") PLEASE ENSURE THAT YOU HAVE DOWNLOADED YOUR WALLET AND ENSURED THAT THE<br/>.JSON WALLET FILE (ethereum-wallet-<lotsOfChars>.json) IS ON YOUR COMPUTER BEFORE YOU SEND ANY BTC.
                    p.text-center You will also be emailed a backup of this file and redirected to the final step when a transaction is detected.
                    p.text-center
                      a#downloadLinkTemp.btn-buy-ether(download="ethereum-wallet-{{wallet.ethaddr}}.json", target="_blank", ng-click="downloadWallet()", href="#") Download your wallet
          .step4-content
            a#print-purchase-page.no-print <i class="fa fa-print fa-2x"></i> print page
            h4 Thank you!
            div
              .row
                .col-sm-6.col-md-5
                  section
                    p.important.text-left Step 6: Download your wallet
                  section
                    p.copy.no-print This file represents your private key to your wallet. It is in the form of a .json file that has been encrypted with your passphrase. When the ethereum blockchain goes live you can import this file into your wallet and the balance will reflect the amount of purchased ether.
                  section
                    a#downloadLink.no-print(download="ethereum-wallet-{{wallet.ethaddr}}.json", target="_blank", ng-click="downloadWallet()", href="#") (Re-) Download your wallet
                  section
                    p.copy Recommendations
                    ol#recommendations
                      li.smaller Write down your passphrase and store it in a secure location
                      li.smaller Backup your wallet .json file on multiple secure mediums
                      li.smaller Visit our <strong><a href="https://forum.ethereum.org/" target="_blank">forums</a></strong> if you have any questions or contact us at <a href="mailto:<EMAIL>"><EMAIL></a>.
                  section
                    a#back-to-start.no-print(ng-click="reset()") Done
                .col-md-2.hidden-sm
                .col-sm-6.col-md-5
                  section
                    p.important Transaction Information
                  section
                    p.important bitcoin transaction ID:
                    p.btc-transaction-id {{transactionHash}}
{'fraction_non_alphanumeric': 0.11528345405252297, 'fraction_numerical': 0.009428236151013637, 'mean_word_length': 1.592468268121263, 'pattern_counts': {'":': 0, '<': 62, '<?xml version=': 0, '>': 62, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 21, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5206628', 'n_tokens_mistral': 7089, 'n_tokens_neox': 6583, 'n_words': 1437}