title: Code Golf: Piano
body: <h2>The challenge</h2>
  
  <p>The shortest code by character count to output a part of a piano keyboard starting from input note in a given length.</p>
  
  <p>Input will be composed of a note (<code>[ACDFG]#|[A-G]</code>) to start printing the keyboard from and a positive number representing length of keys to print including the first note.</p>
  
  <p>The first key should be printed in full - if it has a left sharp key, it will be cut, same for when the start key is sharp, the left key will be cut as well.</p>
  
  <p>A Sharp key is not counted, only white keys.</p>
  
  <h2>Test cases</h2>
  
  <pre><code>Input
      C 14
  Output
      |   ###  ###   |   ###  ###  ###   |   ###  ###   |   ###  ###  ###   |
      |   ###  ###   |   ###  ###  ###   |   ###  ###   |   ###  ###  ###   |
      |   ###  ###   |   ###  ###  ###   |   ###  ###   |   ###  ###  ###   |
      |   ###  ###   |   ###  ###  ###   |   ###  ###   |   ###  ###  ###   |
      |   ###  ###   |   ###  ###  ###   |   ###  ###   |   ###  ###  ###   |
      |    |    |    |    |    |    |    |    |    |    |    |    |    |    |
      |    |    |    |    |    |    |    |    |    |    |    |    |    |    |
      |    |    |    |    |    |    |    |    |    |    |    |    |    |    |
      |____|____|____|____|____|____|____|____|____|____|____|____|____|____|
  </code></pre>
  
  <hr>
  
  <pre><code>Input
      D# 1
  Output
      ###   |
      ###   |
      ###   |
      ###   |
      ###   |
       |    |
       |    |
       |    |
      _|____|
  </code></pre>
  
  <hr>
  
  <pre><code>Input
      A 7
  Output
      ##  ###   |   ###  ###   |   ###  ##
      ##  ###   |   ###  ###   |   ###  ##
      ##  ###   |   ###  ###   |   ###  ##
      ##  ###   |   ###  ###   |   ###  ##
      ##  ###   |   ###  ###   |   ###  ##
      |    |    |    |    |    |    |    |
      |    |    |    |    |    |    |    |
      |    |    |    |    |    |    |    |
      |____|____|____|____|____|____|____|
  </code></pre>
  
  <p>Code count includes input/output (i.e full program).</p>