// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
info: "CharacterEscapeSequnce :: NonEscapeSequence"
es5id: 7.8.4_A4.2_T2
description: "NonEscapeSequence :: ENGLISH CAPITAL ALPHABET"
---*/

//CHECK#A-Z
if ("A" !== "\A") {
  $ERROR('#A');
}

if ("B" !== "\B") {
  $ERROR('#B');
}

if ("C" !== "\C") {
  $ERROR('#C');
}

if ("D" !== "\D") {
  $ERROR('#D');
}

if ("E" !== "\E") {
  $ERROR('#E');
}

if ("F" !== "\F") {
  $ERROR('#F');
}

if ("G" !== "\G") {
  $ERROR('#G');
}

if ("H" !== "\H") {
  $ERROR('#H');
}

if ("I" !== "\I") {
  $ERROR('#I');
}

if ("J" !== "\J") {
  $ERROR('#J');
}

if ("K" !== "\K") {
  $ERROR('#K');
}

if ("L" !== "\L") {
  $ERROR('#L');
}

if ("M" !== "\M") {
  $ERROR('#M');
}

if ("N" !== "\N") {
  $ERROR('#N');
}

if ("O" !== "\O") {
  $ERROR('#O');
}

if ("P" !== "\P") {
  $ERROR('#P');
}

if ("Q" !== "\Q") {
  $ERROR('#Q');
}

if ("R" !== "\R") {
  $ERROR('#R');
}

if ("S" !== "\S") {
  $ERROR('#S');
}

if ("T" !== "\T") {
  $ERROR('#T');
}

if ("U" !== "\U") {
  $ERROR('#U');
}

if ("V" !== "\V") {
  $ERROR('#V');
}

if ("W" !== "\W") {
  $ERROR('#W');
}

if ("X" !== "\X") {
  $ERROR('#X');
}

if ("Y" !== "\Y") {
  $ERROR('#Y');
}

if ("Z" !== "\Z") {
  $ERROR('#Z');
}
