<?xml version="1.0" encoding="utf-8"?>
<!--

   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

-->

<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"    
  "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg width="800" height="600" viewBox="0 0 800 600" 
  onload="loadHandler(evt)"
  xmlns="http://www.w3.org/2000/svg" 
  xmlns:xlink="http://www.w3.org/1999/xlink">

<script type="text/ecmascript" xlink:href="script/util.js"/>
<script type="text/ecmascript" xlink:href="script/board.js"/>
<script type="text/ecmascript" xlink:href="script/deck.js"/>
<script type="text/ecmascript" xlink:href="script/card.js"/>
<script type="text/ecmascript" xlink:href="script/pile.js"/>
<script type="text/ecmascript"><![CDATA[
    var svgns   = "http://www.w3.org/2000/svg";
    var xlinkns = "http://www.w3.org/1999/xlink";
    var cg = document.getElementById("cards");
    var moveGroup = document.getElementById("move");
    var dragGroup = document.getElementById("drag");
    var root     = document.getRootElement();
    var allowDrag = true;

    var BOARD = new Board(cg, moveGroup);
    BOARD.setNotifyMoveDone(towersMoveDone);

    var DECK_PILES = new Array();
    DECK_PILES[0] = new Pile(BOARD, 2.5,   5, 75, 105, 0, 0, 0, 0);
    DECK_PILES[1] = new Pile(BOARD, 82.5,  5, 75, 105, 0, 0, 0, 0);
    DECK_PILES[2] = new Pile(BOARD, 642.5, 5, 75, 105, 0, 0, 0, 0);
    DECK_PILES[3] = new Pile(BOARD, 722.5, 5, 75, 105, 0, 0, 0, 0);

    var HOLD_PILES = new Array();
    HOLD_PILES[0] = new Pile(BOARD, 242.5, 5, 75, 105, 0, 0, 0, 0);
    HOLD_PILES[1] = new Pile(BOARD, 322.5, 5, 75, 105, 0, 0, 0, 0);
    HOLD_PILES[2] = new Pile(BOARD, 402.5, 5, 75, 105, 0, 0, 0, 0);
    HOLD_PILES[3] = new Pile(BOARD, 482.5, 5, 75, 105, 0, 0, 0, 0);

    var piles;

  function loadHandler(evt) {
     getURL("cards/default.svg", setupCards);  
  }
  
  function setupCards(result) {
     if (!result.content) 
        return;
     var doc = parseXML(result.content, document);
     var fc;
     for (fc=doc.firstChild; fc; fc = fc.nextSibling) {
        if (fc.nodeName == "svg") break;
     }
     if (fc.nodeName != "svg") return;
     for (fc=fc.firstChild; fc; fc = fc.nextSibling) {
        if (fc.nodeName == "defs") break;
     }
     if (fc.nodeName != "defs") return;
     root.appendChild(fc);
     init();
  }

    function init() {
      var deck = new Deck(document, 1, "", 75, 105);
      deck.shuffle();
      DECK_PILES[0].suite = SUITE_DIAMOND;
      DECK_PILES[0].setDragCheck(deckDragCheck);
      DECK_PILES[0].setDropCheck(deckDropCheck);
      DECK_PILES[1].suite = SUITE_CLUB;
      DECK_PILES[1].setDragCheck(deckDragCheck);
      DECK_PILES[1].setDropCheck(deckDropCheck);
      DECK_PILES[2].suite = SUITE_HEART;
      DECK_PILES[2].setDragCheck(deckDragCheck);
      DECK_PILES[2].setDropCheck(deckDropCheck);
      DECK_PILES[3].suite = SUITE_SPADE;
      DECK_PILES[3].setDragCheck(deckDragCheck);
      DECK_PILES[3].setDropCheck(deckDropCheck);

      for (var i=0; i<4; i++) {
        HOLD_PILES[i].setDragCheck(holdDragCheck);
        HOLD_PILES[i].setDropCheck(holdDropCheck);
      }
      HOLD_PILES[0].addCard(deck.dealCard(true));
      HOLD_PILES[3].addCard(deck.dealCard(true));

      piles = new Array();
      for (var i=0; i<10; i++) {
        piles[i] = new Pile(BOARD, 2.5+80*i, 120, 75, 105, 0, 25, 0, 0);
        piles[i].setDragCheck(dragCheck);
        piles[i].setDropCheck(dropCheck);
      }

      for (var y=0; y<5; y++) {
        for (var x=0; x<10; x++) {
          piles[x].addCard(deck.dealCard(true));
        }
      }

      towersMoveDone();
    }

    function dragCheck(pile, card, index) {
      if (!allowDrag) return false;

      var sz = pile.size();
      // Not enough free hold spots for drag.
      if ((sz - index) > (freeHold()+1))
        return false; 

      var prevCard = card;
      for (var i=index+1; i<sz; i++) {
        var c = pile.checkCard(i);
        if ((!prevCard.suiteMatch(c)) ||
            (!prevCard.valueOneLower(c)))
          return false;
        prevCard = c;
      }
      return dragGroup;
    }

    function dropCheck(fromPile, toPile, cards) {
      var dragBottomCard = cards[0];
      var pileTopCard = toPile.checkTopCard();
      if (!pileTopCard) {
        if (dragBottomCard.getValue() != 13) 
          return false;
      } else if ((!pileTopCard.suiteMatch(dragBottomCard)) ||
                 (!pileTopCard.valueOneLower(dragBottomCard))) {
        return false;
      }
      for (var i=0; i<cards.length; i++) {
        toPile.addCard(cards[i]);
      }
      return new SimpleMoveInfo(cards, fromPile, cards, toPile);
    }

    function freeHold() {
      var count = 0;
      for (var i=0; i<4; i++) {
        if (HOLD_PILES[i].size() == 0) count++;
      }
      return count;
    }

    function holdDragCheck(pile, card, index) {
      if (!allowDrag) return false;
      return dragGroup;
    }

    function holdDropCheck(fromPile, toPile, cards) {
      if ((toPile.cards.length == 0) && (cards.length == 1)) {
        toPile.addCard(cards[0]);
        return new SimpleMoveInfo(cards, fromPile, cards, toPile);
      }
      return false;
    }

    function deckDragCheck(pile, card, index) {
      return false;
    }

    function deckDropCheck(fromPile, toPile, cards) {
      if (toPile.suite != cards[0].suite) {
        return false;
      }
      var top = toPile.checkTopCard();
      if (top == null) {
        if (cards[cards.length-1].getValue() != 1) 
          return false;
      } else {
        if (! top.valueOneHigher(cards[cards.length-1]))
        return false;
      }

      // Success!
      var toCards = new Array();
      for (var i=cards.length-1; i>=0; i--) {
        toCards.push(cards[i]);
        toPile.addCard(cards[i]);
      }
      return new SimpleMoveInfo(cards, fromPile, toCards, toPile);
    }

    function towersMoveDone() {
      for (var i=0; i<14; i++) {
        var pile;
        if (i<10) {
          pile = piles[i];
        } else {
          pile = HOLD_PILES[i-10];
        }
        var c = pile.checkTopCard();
        while (c != null) {
          var suite = c.getSuite();
          var suitePile = DECK_PILES[suite-1];
          var spc = suitePile.checkTopCard();
          if (spc == null) {
            if (c.getValue() != 1)
              break;
          } else if (!spc.valueOneHigher(c)) {
            break;
          }
          var mi1 = BOARD.getMoveInfo();
          var cs = new Array();
          cs.push(c);
          var mi2 = new SimpleMoveInfo(cs, pile, cs, suitePile);
          var mi = new MultiMoveInfo(mi1, mi2);
          BOARD.setMoveInfo(mi);

          suitePile.moveCardTo(c, 40);
          setTimeout("towersMoveDone()", 150);
          allowDrag = false;
          return;
        }
      }

      allowDrag = true;

      for (var i=0; i<10; i++) {
        var pile = piles[i];
        if (pile.checkTopCard() != null) {
          return;
        }
      }
      
      BOARD.won();
    }

function showMore() {
    var moreG = document.getElementById("more");
    if (!moreG) return;
    var style = moreG.style;
    if (style.getPropertyValue("display") == "inline") {
      hideMore();
      return;
    }
    style.setProperty("display", "inline", "");
    style.setProperty("pointer-events", "fill", "");
    moreG.addEventListener("click", hideMore, false);
}

function hideMore() {
    var moreG = document.getElementById("more");
    if (!moreG) return;
    moreG.removeEventListener("click", hideMore, false);
    moreG.style.setProperty("pointer-events", "none", "");
    moreG.style.setProperty("display", "none", "");
}

]]></script>

  <g id="background" style="pointer-events:none;">
    <rect x="0" y="0" width="100%" height="100%" fill="#080" pointer-events="fill"/>
    <rect rx="6" ry="6" x="7.5" y="5" width="65" height="104" 
      fill="white" stroke="black"/>
    <g transform="translate(7.5, 5)">
      <path fill="#FF0000" d="M49.662,52.177L32.643,78.178L15.625,52.177
        l17.019-26.001L49.662,52.177z"/>
      <path fill="none" stroke="#FFFFFF" stroke-width="2" 
        d="M32.643,32.567c3.657,5.587,11.083,16.932,12.836,19.61
        c-1.753,2.678-9.179,14.022-12.836,19.61
        c-3.657-5.588-11.083-16.933-12.836-19.61
        C21.56,49.499,28.986,38.154,32.643,32.567z
        M32.643,32.567c3.657,5.587,11.083,16.932,12.836,19.61
        c-1.753,2.678-9.179,14.022-12.836,19.61
        c-3.657-5.588-11.083-16.933-12.836-19.61
        C21.56,49.499,28.986,38.154,32.643,32.567z"/>
      <path fill="#FFFFFF" d="M29.194,45.139
        c0,0,1.726-2.635,3.449-5.269c1.724,2.634,6.388,9.758,8.056,12.306
        c-1.6,2.442-4.95,7.563-8.056,12.307
        c-3.105-4.744-6.456-9.864-8.056-12.307
        C26.255,49.629,29.194,45.139,29.194,45.139z"/>
      <path fill="#FFFFFF" d="M29.194,45.139c0,0,1.726-2.635,3.449-5.269
        c1.724,2.634,6.388,9.758,8.056,12.306
        c-1.6,2.442-4.95,7.563-8.056,12.307
        c-3.105-4.744-6.456-9.864-8.056-12.307
        C26.255,49.629,29.194,45.139,29.194,45.139z
        M29.194,45.139c0,0,1.726-2.635,3.449-5.269
        c1.724,2.634,6.388,9.758,8.056,12.306
        c-1.6,2.442-4.95,7.563-8.056,12.307
        c-3.105-4.744-6.456-9.864-8.056-12.307
        C26.255,49.629,29.194,45.139,29.194,45.139z"/>
      <path d="M25.587,52.177c0,0.552-0.447,1-1,1s-1-0.448-1-1
        s0.447-1,1-1S25.587,51.625,25.587,52.177z"/>
      <path d="M33.643,39.871c0,0.552-0.447,1-1,1s-1-0.448-1-1
        s0.447-1,1-1S33.643,39.318,33.643,39.871z"/>
      <path d="M41.699,52.177c0,0.552-0.447,1-1,1s-1-0.448-1-1
        s0.447-1,1-1S41.699,51.625,41.699,52.177z"/>
      <path d="M33.643,64.483c0,0.552-0.447,1-1,1s-1-0.448-1-1
        s0.447-1,1-1S33.643,63.932,33.643,64.483z"/>
      <path d="M29.106,57.552c0,0.552-0.447,1-1,1s-1-0.448-1-1
        s0.447-1,1-1S29.106,57,29.106,57.552z"/>
      <path d="M38.18,57.552c0,0.552-0.447,1-1,1s-1-0.448-1-1
        s0.447-1,1-1S38.18,57,38.18,57.552z"/>
      <path d="M38.18,46.802c0,0.552-0.447,1-1,1s-1-0.448-1-1
        s0.447-1,1-1S38.18,46.25,38.18,46.802z"/>
      <path d="M29.105,46.802c0,0.552-0.447,1-1,1s-1-0.448-1-1
        s0.447-1,1-1S29.105,46.25,29.105,46.802z"/>
      <path d="M33.643,78.178c0,0.551-0.447,1-1,1s-1-0.449-1-1
        c0-0.553,0.447-1,1-1S33.643,77.625,33.643,78.178z"/>
      <path d="M50.662,52.177c0,0.551-0.447,1-1,1s-1-0.449-1-1
        c0-0.553,0.447-1,1-1S50.662,51.624,50.662,52.177z"/>
      <path d="M33.643,26.176c0,0.551-0.447,1-1,1s-1-0.449-1-1
        c0-0.553,0.447-1,1-1S33.643,25.623,33.643,26.176z"/>
      <path d="M16.625,52.177c0,0.551-0.447,1-1,1s-1-0.449-1-1
        c0-0.553,0.447-1,1-1S16.625,51.624,16.625,52.177z"/>
    </g>
    <rect rx="6" ry="6" x="87.5" y="5" width="65" height="104" 
      fill="white" stroke="black"/>
    <g transform="translate(87.5, 5)">
      <path d="M29.224,57.547c0,7.585-3.034,14.412-8.344,14.412v1.517h24.273
        v-1.517c-6.068,0-8.345-6.827-8.345-14.412
        c2.774,3.661,7.948,4.469,11.707,1.829
        c3.856-2.709,4.787-8.032,2.078-11.888s-8.032-4.787-11.889-2.078
        c3.287-3.325,3.287-8.675,0-12c-3.313-3.351-8.717-3.382-12.068-0.068
        c-3.351,3.313-3.382,8.717-0.068,12.068
        c-3.759-2.641-8.933-1.832-11.706,1.829
        c-2.847,3.756-2.109,9.108,1.647,11.955
        c3.756,2.847,9.108,2.108,11.955-1.647"/>
      <path fill="#FFFFFF" d="M25.282,52.542c0,2.139-1.734,3.873-3.873,3.873
        s-3.873-1.734-3.873-3.873s1.734-3.873,3.873-3.873
        S25.282,50.403,25.282,52.542z"/>
      <path fill="#FFFFFF" d="M47.532,52.542c0,2.139-1.734,3.873-3.873,3.873
        s-3.873-1.734-3.873-3.873s1.734-3.873,3.873-3.873
        S47.532,50.403,47.532,52.542z"/>
      <path fill="#FFFFFF" d="M36.579,39.411c0,2.139-1.734,3.873-3.873,3.873
        s-3.873-1.734-3.873-3.873s1.734-3.873,3.873-3.873
        S36.579,37.272,36.579,39.411z"/>
    </g>    

    <rect rx="6" ry="6" x="647.5" y="5" width="65" height="104" 
      fill="white" stroke="black"/>
    <g transform="translate(647.5, 5)">
      <path fill="#FF0000" d="M13.143,42.426
        c0-6.118,3.822-11.088,8.411-11.088c6.118,0,11.089,4.971,11.089,11.088
        c0-6.118,4.971-11.088,11.089-11.088c4.588,0,8.412,4.971,8.412,11.088
        c0,8.03-16.824,17.207-19.501,30.589
        C29.966,59.633,13.143,50.456,13.143,42.426z"/>
      <path fill="none" stroke="#000" stroke-width="2" stroke-linecap="round" 
        stroke-miterlimit="7" stroke-dasharray="0 6.139" 
        d="M32.643,30.822c-2.89-2.762-6.784-4.484-11.089-4.484
        c-7.395,0-13.411,7.217-13.411,16.088c0,5.695,4.452,10.55,9.166,15.69
        c4.35,4.741,9.278,10.116,10.431,15.88c0.468,2.337,2.52,4.02,4.903,4.02
        s4.436-1.683,4.903-4.02c1.152-5.764,6.082-11.139,10.431-15.88
        c4.714-5.14,9.167-9.995,9.167-15.69c0-8.871-6.017-16.088-13.412-16.088
        C39.427,26.338,35.533,28.06,32.643,30.822z"/>
      <path d="M32.643,53.509c-0.749-2.514-1.698-4.628-4.891-7.82
        c-2.132-2.132-3.111-4.239-3.111-6.42c0-1.104-0.896-2-2-2
        s-2,0.896-2,2c0,4.18,2.668,6.36,5.021,8.285
        c2.562,2.094,5.259,5.044,5.909,9.791
        c0.266,1.938,0.411,4.157,1.071,4.817
        c0.66-0.66,0.806-2.879,1.071-4.817
        c0.65-4.747,3.348-7.697,5.909-9.791c2.354-1.924,5.021-4.105,5.021-8.285
        c0-1.104-0.896-2-2-2s-2,0.896-2,2c0,2.182-0.979,4.289-3.111,6.42
        C34.341,48.881,33.392,50.995,32.643,53.509z"/>
      <path fill="#FFFFFF" d="M43.77,39.268
        c0,0.621-0.504,1.125-1.125,1.125s-1.125-0.504-1.125-1.125
        s0.504-1.125,1.125-1.125S43.77,38.647,43.77,39.268z"/>
      <path fill="#FFFFFF" d="M23.766,39.268
        c0,0.621-0.504,1.125-1.125,1.125s-1.125-0.504-1.125-1.125
        s0.504-1.125,1.125-1.125S23.766,38.647,23.766,39.268z"/>
    </g>
    <rect rx="6" ry="6" x="727.5" y="5" width="65" height="104" 
      fill="white" stroke="black"/>
    <g transform="translate(727.5, 5)">
      <path fill="#000" d="M49.723,52.583c1.456,1.402,2.322,3.306,2.421,5.325
        c0.213,4.374-3.159,8.093-7.532,8.306
        c-4.374,0.214-8.092-3.158-8.306-7.532
        c0,9.352,2.439,13.417,8.132,13.417v1.627H20.856v-1.627
        c5.692,0,8.132-4.065,8.132-13.417c-0.099,2.02-0.965,3.924-2.421,5.325
        c-3.154,3.037-8.173,2.941-11.21-0.213
        c-3.036-3.155-2.94-8.174,0.214-11.21
        c3.253-3.253,11.384-9.758,17.076-21.955
        C38.339,42.826,46.47,49.331,49.723,52.583z"/>
      <path fill="#FFF" d="M25.115,58.682c0,2.139-1.734,3.873-3.873,3.873
        s-3.873-1.734-3.873-3.873s1.734-3.873,3.873-3.873
        S25.115,56.543,25.115,58.682z"/>
      <path fill="#FFF" d="M48.485,58.682c0,2.139-1.734,3.873-3.873,3.873
        s-3.873-1.734-3.873-3.873s1.734-3.873,3.873-3.873
        S48.485,56.543,48.485,58.682z"/>
      <path fill="#F00" d="M21.631,52.328
        c3.035-2.934,7.202-11.569,11.016-17.667
        c3.836,6.134,8.028,14.783,11.068,17.718
        c-3.042,0.432-5.398,3.015-5.469,6.157
        c0-12.762-1.508-17.526-5.6-21.618
        c-4.092,4.092-5.039,8.856-5.039,21.632
        C27.54,55.229,24.919,52.528,21.631,52.328z"/>
    </g>

    <g transform="translate(242.5, 5)" clip-path="url(#castleClip)">
      <linearGradient id="sky" x1=".5" y1="1" x2=".5" y2="0">
        <stop  offset="0.5" style="stop-color:#8E7BFF"/>
        <stop  offset="1" style="stop-color:#810062"/>
      </linearGradient>
      <linearGradient id="castle" x1="0" y1=".5" x2="1" y2=".5">
        <stop  offset="0" style="stop-color:#898989"/>
        <stop  offset="0.3" style="stop-color:#A7A9A9"/>
        <stop  offset="1" style="stop-color:#898989"/>
      </linearGradient>
      <clipPath id="castleClip">
        <rect rx="6" ry="6" x=".5" y=".5" width="74" height="105"/>
        <rect rx="6" ry="6" x="80.5" y=".5" width="74" height="105"/>
        <rect rx="6" ry="6" x="160.5" y=".5" width="74" height="105"/>
        <rect rx="6" ry="6" x="240.5" y=".5" width="74" height="105"/>
      </clipPath>

      <rect fill="url(#sky)" x=".5" y=".5" width="315" height="105"/>
      <g fill="#FFFFA9">
        <path d="M10,39h-1v-1h1z"/>
        <path d="M18,16h-1v-1h1z"/>
        <path d="M33,25h-1v-1h1z"/>
        <path d="M46,12h-1v-1h1z"/>
        <path d="M59,31h-1v-1h1z"/>
        <path d="M92,18h-1v-1h1z"/>
        <path d="M99,29h-1v-1h1z"/>
        <path d="M127,37h-1v-1h1z"/>
        <path d="M140,10h-1v-1h1z"/>
        <path d="M182,15h-1v-1h1z"/>
        <path d="M224,20h-1v-1h1z"/>
        <path d="M230,39h-1v-1h1z"/>
        <path d="M253,46h-1v-1h1z"/>
        <path d="M254,15h-1v-1h1z"/>
        <path d="M262,32h-1v-1h1z"/>
        <path d="M274,20h-1v-1h1z"/>
        <path d="M280,43h-1v-1h1z"/>
        <path d="M291,27h-1v-1h1z"/>
        <path d="M312,39h-1v-1h1z"/>
      </g>
      <path fill="#C3C7D8" 
        d="M127.333,50.667c0,10.494-8.506,19-19,19s-19-8.506-19-19
        s8.506-19,19-19S127.333,40.173,127.333,50.667z"/>
      
      <path fill="#FFFFFF" stroke="#000000" 
        d="M257.11,68.541c-30.157-7.08-27.901-22.959-77.54-22.959
        c-27.382,0-61.187,9.457-71.545,16.265
        c-7.651-4.001-17.214-7.379-29.618-9.288
        c-25.283-3.89-54.651,0-77.907,11.627V105.5h315
        V71.163C286.928,72.842,269.354,71.415,257.11,68.541z"/>
      <path fill="none" stroke="#000000" 
        d="M0.5,64.186c23.256-11.627,52.624-15.518,77.907-11.627
        c30.232,4.651,43.604,18.023,53.488,27.907"/>
      <path fill="none" stroke="#000000" 
        d="M108.025,61.846c10.358-6.808,44.163-16.265,71.545-16.265
        c69.789,0,36.976,31.396,135.93,25.582"/>
      
      <g fill="url(#castle)" stroke="#000">
        <path d="M177.5,50h-7V27.5h7V50z"/>
        <path fill="#898989" d="M201,50h-23.5V34H201V50z"/>
        <path d="M208,50h-7V27.5h7V50z"/>
        <path fill="#9E6D5C" 
          d="M191.922,50c0,0,0-4.658,0-6s0-3.704-2.672-5.409
          c-2.672,1.705-2.672,4.066-2.672,5.409s0,6,0,6"/>
        <g stroke-width="0.5">
          <path d="M178.485,21.22v1.93h-1.409v-1.93h-2.227v1.93h-1.485v-1.93
            h-2.227v1.93h-1.559v-1.93h-2.227v1.93h1.147v4.35h11
            v-4.35h1.212v-1.93H178.485z"/>
          <path d="M208.985,21.22v1.93h-1.409v-1.93h-2.227v1.93h-1.485v-1.93
            h-2.227v1.93h-1.559v-1.93h-2.227v1.93H199v4.35h11v-4.35h1.212
            v-1.93H208.985z"/>
          <path fill="#9B9B49" 
            d="M205.836,39.056c0,0,0-2.329,0-3s0-1.852-1.336-2.705
            c-1.336,0.853-1.336,2.033-1.336,2.705s0,3,0,3H205.836z"/>
          <path fill="#9B9B49" 
            d="M175.336,39.056c0,0,0-2.329,0-3s0-1.852-1.336-2.705
            c-1.336,0.853-1.336,2.033-1.336,2.705s0,3,0,3H175.336z"/>
        </g>
      </g>
    </g>

    <g fill="none" stroke="white" stroke-width="1">
      <rect rx="6" ry="6" x="7.5" y="120" width="64"   height="104"/>
      <rect rx="6" ry="6" x="87.5" y="120" width="64"  height="104"/>
      <rect rx="6" ry="6" x="167.5" y="120" width="64" height="104"/>
      <rect rx="6" ry="6" x="247.5" y="120" width="64" height="104"/>
      <rect rx="6" ry="6" x="327.5" y="120" width="64" height="104"/>
      <rect rx="6" ry="6" x="407.5" y="120" width="64" height="104"/>
      <rect rx="6" ry="6" x="487.5" y="120" width="64" height="104"/>
      <rect rx="6" ry="6" x="567.5" y="120" width="64" height="104"/>
      <rect rx="6" ry="6" x="647.5" y="120" width="64" height="104"/>
      <rect rx="6" ry="6" x="727.5" y="120" width="64" height="104"/>
    </g>

    <text x="10" y="560" fill="white" font-size="20">z/Z <tspan x="45"
      >- Undo move</tspan></text>
    <rect fill="none" stroke="none" 
      pointer-events="fill" onclick="BOARD.undoMove()"
      x="0" y="540" width="170" height="22"/>

    <text x="10" y="580" fill="white" font-size="20">r/R <tspan x="45"
      >- Redo move</tspan></text>
    <rect fill="none" stroke="none" 
      pointer-events="fill" onclick="BOARD.redoMove()"
      x="0" y="562" width="170" height="22"/>
    <text x="790" y="580" fill="white" font-size="20" text-anchor="end"
         >? - Get Help</text>
    <rect fill="none" stroke="none" 
      pointer-events="fill" onclick="BOARD.showHelp()"
      x="675" y="560" width="125" height="25"/>
  </g>

  <g id="cards"/>

  <g id="move" style="pointer-events:none; opacity: 0.75;">
    <g id="drag" style="pointer-events:none; opacity: 0.75;"/>
  </g>

  <g id="win" style="display:none; pointer-events:none; ">
    <rect x="0" y="115" width="800" height="485" fill="#008"
      fill-opacity="0.75"/>
    <text x="50%" y="50%" text-anchor="middle"
      font-size="72" fill="white">Completed!!!</text>
  </g>
    
  <g id="help" style="display:none; pointer-events:none; ">
    <rect x="0" y="115" width="800" height="485" fill="#008"
      fill-opacity="0.85"/>
    <text x="50%" y="160" font-size="36" fill="white" text-anchor="middle"
      >Towers du Alice</text>
    <text x="50" y="190" font-size="18" fill="white"
      >This is a solitare game, as with most
    <tspan x="50" dy="1.2em">the basic rules are very simple.</tspan>

    <tspan x="50" dy="2em">The main playing field is ten colums of</tspan>
    <tspan x="50" dy="1.2em">five cards each. Above the playing field</tspan>
    <tspan x="50" dy="1.2em">to either side are four 'deck' piles, one</tspan>
    <tspan x="50" dy="1.2em">for each suite, etween these are the</tspan>
    <tspan x="50" dy="1.2em">four Towers.</tspan>

    <tspan x="50" dy="2em">To start most cards are delt into the</tspan>
    <tspan x="50" dy="1.2em">playing field. The last two cards are</tspan>
    <tspan x="50" dy="1.2em">placed in two of the Towers.</tspan>

    <tspan x="50" dy="2em">In the main playing field only a card of</tspan>
    <tspan x="50" dy="1.2em">the same suite and one lower value can</tspan>
    <tspan x="50" dy="1.2em">be placed on another card in the</tspan>
    <tspan x="50" dy="1.2em">playing field. You are only allowed to</tspan>
    <tspan x="50" dy="1.2em">'pick up' one card at a time. As a</tspan>
    <tspan x="50" dy="1.2em">convieniece the game will allow you</tspan>
    <tspan x="50" dy="1.2em">to 'pick up' runs of cards if you have</tspan>

    <tspan x="425" y="190">enough open Towers that you could</tspan>
    <tspan x="425" dy="1.2em">have moved the lower cards into first.</tspan>

    <tspan x="425" dy="2em">The Towers are your most important</tspan>
    <tspan x="425" dy="1.2em">asset in the game. Each Tower can hold</tspan>
    <tspan x="425" dy="1.2em">one card. You can put any card you want</tspan>
    <tspan x="425" dy="1.2em">at any time, you can also remove cards</tspan>
    <tspan x="425" dy="1.2em">from the towers at any time.</tspan>

    <tspan x="425" dy="2em">The game will automatically clear cards</tspan>
    <tspan x="425" dy="1.2em">to the deck when possible. Unlike</tspan>
    <tspan x="425" dy="1.2em">traditional Solitare this is never</tspan>
    <tspan x="425" dy="1.2em">a bad move.</tspan>

    <tspan x="425" dy="2em">This game includes Undo/Redo, this</tspan>
    <tspan x="425" dy="1.2em">should pose no ethical dilema as all</tspan>
    <tspan x="425" dy="1.2em">cards are visible from the start.</tspan>
    <tspan x="425" dy="2em"
    >Get comfortable with Undo,</tspan>
    <tspan x="425" dy="1.2em">you will use it often.</tspan>
  </text>

  <rect x="675" y="555" width="115" height="35" rx="3" ry="3"
      fill="#001473" stroke="white" stroke-width="2" onclick="showMore()"/>
  <text x="732.5" y="580" fill="white" font-size="20" text-anchor="middle"
      pointer-events="none" >More Info</text>
  </g>

  <g id="more" style="display:none; pointer-events:none; ">
    <rect x="0" y="115" width="800" height="485" fill="#001473" />
    <text x="50%" y="160" font-size="36" fill="white" text-anchor="middle"
      >Towers du Alice</text>
    <text x="50%" y="190" font-size="18" fill="white" text-anchor="middle"
      >Art Cabral, author of the popular Seahaven Towers<tspan font-size=".6em" baseline-shift="6">(TM)</tspan>
      <tspan x="50%" dy="1.2em">game, has assigned a proper name to the card game,</tspan>
      <tspan x="50%" dy="1.2em">naming it after its discoverer, Alice Drennen.</tspan>
      <tspan x="50%" dy="1.2em">Art Cabral's product will still be called Seahaven Towers<tspan font-size=".6em" baseline-shift="6">(TM)</tspan>,</tspan>

      <tspan x="50%" dy="1.2em">but the solitaire card game itself will be named</tspan>
      <tspan x="50%" dy="1.2em">"Towers du Alice."</tspan>
    </text>
  </g>

</svg>
