// Copyright (C) 2015 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
info: Correct interpretation of RUSSIAN ALPHABET
es6id: 11.6
description: Check RUSSIAN CAPITAL ALPHABET
---*/

var А = 1;
assert.sameValue(А, 1);

var Б = 1;
assert.sameValue(Б, 1);

var В = 1;
assert.sameValue(В, 1);

var Г = 1;
assert.sameValue(Г, 1);

var Д = 1;
assert.sameValue(Д, 1);

var Е = 1;
assert.sameValue(Е, 1);

var Ж = 1;
assert.sameValue(Ж, 1);

var З = 1;
assert.sameValue(З, 1);

var И = 1;
assert.sameValue(И, 1);

var Й = 1;
assert.sameValue(Й, 1);

var К = 1;
assert.sameValue(К, 1);

var Л = 1;
assert.sameValue(Л, 1);

var М = 1;
assert.sameValue(М, 1);

var Н = 1;
assert.sameValue(Н, 1);

var О = 1;
assert.sameValue(О, 1);

var П = 1;
assert.sameValue(П, 1);

var Р = 1;
assert.sameValue(Р, 1);

var С = 1;
assert.sameValue(С, 1);

var Т = 1;
assert.sameValue(Т, 1);

var У = 1;
assert.sameValue(У, 1);

var Ф = 1;
assert.sameValue(Ф, 1);

var Х = 1;
assert.sameValue(Х, 1);

var Ц = 1;
assert.sameValue(Ц, 1);

var Ч = 1;
assert.sameValue(Ч, 1);

var Ш = 1;
assert.sameValue(Ш, 1);

var Щ = 1;
assert.sameValue(Щ, 1);

var Ъ = 1;
assert.sameValue(Ъ, 1);

var Ы = 1;
assert.sameValue(Ы, 1);

var Ь = 1;
assert.sameValue(Ь, 1);

var Э = 1;
assert.sameValue(Э, 1);

var Ю = 1;
assert.sameValue(Ю, 1);

var Я = 1;
assert.sameValue(Я, 1);

var Ё = 1;
assert.sameValue(Ё, 1);
