//FIXED THIS ERROR:  subtractiveNumeralsRange[4][0] = 100;   subtractiveNumeralsRange[4][1] = 400;

//FAILED NUMERALS:
//NONE - ALL PASSES


//best
// USE THIS BUT BE EXTRMELY CAREFUL TO KEEP checking
//XCX IVC CCM (these are supppose to error) - this is working fine.....
//They are critical for coding.
//Currently up to line 914
// issue currently with order of notations CM XI is valid XI CM (not valid)
//but software showing both as ok - NEEDS TO BE FIXED WITH PRIORITY
//ISSUE IS ONLY WITH 2 NOTATIONS
//logic of programme alsmost complete:
// need to add total for all subtractive notations...
// then apply other rules for invalid numbers
// then the untotal will be all the other characters which have not been processed
//best
// USE THIS BUT BE EXTRMELY CAREFUL TO KEEP checking
//XCX IVC CCM (these are supppose to error)
// It also does not get to the above conditions if numeral is longer such as MIVC.. now fixed
//They are critical for coding.
//NEED TO RE-CHECK LOGIC OF HOW twoSubtractiveNotations IS SET TO true - TOTAL IS DOUBLE (WRONG)
//IVCM now fails as expected
// added code to support both directions looking in rule 3
// XCX and IVC still ok... but CCM overruns i counter to 5.. bigger than length#
// trying something like IVC to reach rule 3 ver2.... it reaches max index
// OUTSTANDING.
//CMIV - it is doubling value to 1808 instead of 909...
// this is issue of CM (i index) IV (j index) comparing to CM (j index) and IV (i index)
//Everything else is fixedg

/*
USEFUL CODE TO TROUBLESHOOT AREAS AND GET INDEXES
System.out.println("£££££££££££££££££££££££££££££££££   " + numeralsToString);
// System.out.println(numeralsToString.indexOf(subtractiveNumerals[i]+2));
//System.out.prinumeralsToString.indexOf(subtractiveNumerals[j]+2);
                        
System.out.println(subtractiveNumeralsRange[i][0]+"-"+subtractiveNumeralsRange[i][1] + "    i: " + numeralsToString.indexOf(subtractiveNumerals[i]) + "   " + numeralsToString.substring(numeralsToString.indexOf(subtractiveNumerals[i]),numeralsToString.indexOf(subtractiveNumerals[i])+2));
System.out.println(subtractiveNumeralsRange[j][0]+"-"+subtractiveNumeralsRange[j][1]  + "   j: " + numeralsToString.indexOf(subtractiveNumerals[]) + "   " + numeralsToString.substring(numeralsToString.indexOf(subtractiveNumerals[j]),numeralsToString.indexOf(subtractiveNumerals[j])+2));
System.out.println("£££££££££££££££££££££££££££££££££");

*/

import java.util.Scanner;
import java.util.Arrays;
/*
Online Java - IDE, Code Editor, Compiler
valu`va
Online Java is a quick and easy tool that helps you to build, compile, test your programs online.
*/
// need to address finding match of 4 consecutive numerals
// need to address errors on word document
// can not handle VII or VIII
//switching technique

public class Main
{
    public static void main(String[] args) 
    {
        //These were failing but remediated as part of extensive testing
        String []failingNumeralToDecimal = new String[] {
        /*444 Decimal: 444 => */ "CDXLIV",
        /*449 Decimal: 449 => */"CDXLIX",
        /*494 Decimal: 494 =>*/ "CDXCIV",
        /*499 Decimal: 499 => */"CDXCIX",
        /*944 Decimal: 944 => */"CMXLIV",
        /*949 Decimal: 949 => */"CMXLIX",
        /*994 Decimal: 994 => */"CMXCIV",
        /*999 Decimal: 999 => */"CMXCIX",
        /*1444 Decimal: 1444 => */"MCDXLIV",
        /*1449 Decimal: 1449 => */"MCDXLIX",
        /*1494 Decimal: 1494 => */"MCDXCIV",
        /*1499 Decimal: 1499 => */"MCDXCIX",
        /*1944 Decimal: 1944 => */"MCMXLIV",
        /*1999 Decimal: 1999 => */"MCMXCIX",
        /*2444 Decimal: 2444 => */"MMCDXLIV",
        /*2449 Decimal: 2449 => */"MMCDXLIX",
        /*2494 Decimal: 2494 => */"MMCDXCIV",
        /*2499 Decimal: 2499 => */"MMCDXCIX",
        /*2944 Decimal: 2944 => */"MMCMXLIV",
        /*2949 Decimal: 2949 => */"MMCMXLIX",
        /*2994 Decimal: 2994 => */"MMCMXCIV",
        /*2999 Decimal: 2999 => */"MMCMXCIX",
        /*3444 Decimal: 3444 => */"MMMCDXLIV",
        /*3449 Decimal: 3449 => */"MMMCDXLIX",
        /*3494 Decimal: 3494 => */"MMMCDXCIV",
        /*3499 Decimal: 3499 => */"MMMCDXCIX",
        /*3944 Decimal: 3944 => */"MMMCMXLIV",
        /*3949 Decimal: 3949 => */"MMMCMXLIX",
        /*3999 Decimal: 3999 => */"MMMCMXCIX"        };
            
        String [] allNumerals = new String[4000];

        //allNumerals[0]="IXCXCCDCCMMCMXXXXXICLM";   //This can be enabled to see outcome invalid numeral	
        //allNumerals[0]="IXCX;  //This can be enabled to see outcome invalid numeral#

        //allNumerals[0]="MMMCCDLXIV";  //This is an example of a number which is incorrect numeral
        //I have modified a correct numeral MMMCDLXIV (3464)
        //********************* GRAND TOTAL*************
        //NOTE: Code is designed for up to MMMM=4000 due to notation changes henceforth
        //MMMCDLXIV is a VALID roman numeral
        //runningTotal:404
        //Not added total:3060
        //**TOTAL: 3464
        //**********************************

        //but it is difficult for the code to verify this....
        //since in all the rules that I followed, there is nothing to scan the entire numeral.
        //And we know that subtractive notation can have lower numeral at front...
        // And with  (C)CD  it is not applicable since CD is not a subtractive notation..

        //I would need to create a personal rule to check   if (index pos  < index pos + 1)
        //in which case it would cause violation....

        /*
        ********************* GRAND TOTAL*************
        NOTE: Code is designed for up to MMMM=4000 due to notation changes henceforth
        MMM(C)CDLXIV is a VALID roman numeral
        runningTotal:404
        Not added total:3160
        **TOTAL: 3564
        ***********************************
        */

                allNumerals[0]="MMMCCDLXIV";

            /*
               allNumerals[0]="I";
               allNumerals[1]="II";	
               allNumerals[2]="III";	
               allNumerals[3]="IV";
               allNumeralsumerals[4]="V";	
               allNumeralsumerals[5]="VI";	
               allNumeralsumerals[6]="VII";	
               allNumeralsumerals[7]="VIII";	
               allNumeralsumerals[8]="IX";	
               allNumeralsumerals[9]="X";	
               allNumeralsumerals[10]="XI";	
               allNumeralsumerals[11]="XII";	
               allNumeralsumerals[12]="XIII";	
               allNumeralsumerals[13]="XIV";	
               allNumeralsumerals[14]="XV";	
               allNumeralsumerals[15]="XVI";	
               allNumeralsumerals[16]="XVII";	
               allNumeralsumerals[17]="XVIII";	
               allNumeralsumerals[18]="XIX";	
               allNumeralsumerals[19]="XX";	
               allNumeralsumerals[20]="XXI";	
               allNumeralsumerals[21]="XXII";	
               allNumeralsumerals[22]="XXIII";	
               allNumeralsumerals[23]="XXIV";	
               allNumeralsumerals[24]="XXV";	
               allNumeralsumerals[25]="XXVI";	
               allNumeralsumerals[26]="XXVII";	
               allNumeralsumerals[27]="XXVIII";	
               allNumeralsumerals[28]="XXIX";	
               allNumeralsumerals[29]="XXX";	
               allNumeralsumerals[30]="XXXI";	
               allNumeralsumerals[31]="XXXII";	
               allNumeralsumerals[32]="XXXIII";	
               allNumeralsumerals[33]="XXXIV";	
               allNumeralsumerals[34]="XXXV";	
               allNumeralsumerals[35]="XXXVI";	
               allNumeralsumerals[36]="XXXVII";	
               allNumeralsumerals[37]="XXXVIII";	
               allNumeralsumerals[38]="XXXIX";	
               allNumeralsumerals[39]="XL";	
               allNumeralsumerals[40]="XLI";	
               allNumeralsumerals[41]="XLII";	
               allNumeralsumerals[42]="XLIII";	
               allNumeralsumerals[43]="XLIV";	
               allNumeralsumerals[44]="XLV";	
               allNumeralsumerals[45]="XLVI";	
               allNumeralsumerals[46]="XLVII";	
               allNumeralsumerals[47]="XLVIII";	
               allNumeralsumerals[48]="XLIX";	
               allNumeralsumerals[49]="L";	
               allNumeralsumerals[50]="LI";	
               allNumeralsumerals[51]="LII";	
               allNumeralsumerals[52]="LIII";	
               allNumeralsumerals[53]="LIV";	
               allNumeralsumerals[54]="LV";	
               allNumeralsumerals[55]="LVI";	
               allNumeralsumerals[56]="LVII";	
               allNumeralsumerals[57]="LVIII";	
               allNumeralsumerals[58]="LIX";	
               allNumeralsumerals[59]="LX";	
               allNumeralsumerals[60]="LXI";	
               allNumeralsumerals[61]="LXII";	
               allNumeralsumerals[62]="LXIII";	
               allNumeralsumerals[63]="LXIV";	
               allNumeralsumerals[64]="LXV";	
               allNumeralsumerals[65]="LXVI";	
               allNumeralsumerals[66]="LXVII";	
               allNumeralsumerals[67]="LXVIII";	
               allNumeralsumerals[68]="LXIX";	
               allNumeralsumerals[69]="LXX";	
               allNumeralsumerals[70]="LXXI";	
               allNumeralsumerals[71]="LXXII";	
               allNumeralsumerals[72]="LXXIII";	
               allNumeralsumerals[73]="LXXIV";	
               allNumeralsumerals[74]="LXXV";	
               allNumeralsumerals[75]="LXXVI";	
               allNumeralsumerals[76]="LXXVII";	
               allNumeralsumerals[77]="LXXVIII";	
               allNumeralsumerals[78]="LXXIX";	
               allNumeralsumerals[79]="LXXX";	
               allNumeralsumerals[80]="LXXXI";	
               allNumeralsumerals[81]="LXXXII";	
               allNumeralsumerals[82]="LXXXIII";	
               allNumeralsumerals[83]="LXXXIV";	
               allNumeralsumerals[84]="LXXXV";	
               allNumeralsumerals[85]="LXXXVI";	
               allNumeralsumerals[86]="LXXXVII";	
               allNumeralsumerals[87]="LXXXVIII";	
               allNumeralsumerals[88]="LXXXIX";	
               allNumeralsumerals[89]="XC";	
               allNumeralsumerals[90]="XCI";	
               allNumeralsumerals[91]="XCII";	
               allNumeralsumerals[92]="XCIII";	
               allNumeralsumerals[93]="XCIV";	
               allNumeralsumerals[94]="XCV";	
               allNumeralsumerals[95]="XCVI";	
               allNumeralsumerals[96]="XCVII";	
               allNumeralsumerals[97]="XCVIII";	
               allNumeralsumerals[98]="XCIX";	
               allNumeralsumerals[99]="C";	
               allNumeralsumerals[100]="CI";	
               allNumeralsumerals[101]="CII";	
               allNumeralsumerals[102]="CIII";	
               allNumeralsumerals[103]="CIV";	
               allNumeralsumerals[104]="CV";	
               allNumeralsumerals[105]="CVI";	
               allNumeralsumerals[106]="CVII";	
               allNumeralsumerals[107]="CVIII";	
               allNumeralsumerals[108]="CIX";	
               allNumeralsumerals[109]="CX";	
               allNumeralsumerals[110]="CXI";	
               allNumeralsumerals[111]="CXII";	
               allNumeralsumerals[112]="CXIII";	
               allNumeralsumerals[113]="CXIV";	
               allNumeralsumerals[114]="CXV";	
               allNumeralsumerals[115]="CXVI";	
               allNumeralsumerals[116]="CXVII";	
               allNumeralsumerals[117]="CXVIII";	
               allNumeralsumerals[118]="CXIX";	
               allNumeralsumerals[119]="CXX";	
               allNumeralsumerals[120]="CXXI";	
               allNumeralsumerals[121]="CXXII";	
               allNumeralsumerals[122]="CXXIII";	
               allNumeralsumerals[123]="CXXIV";	
               allNumeralsumerals[124]="CXXV";	
               allNumeralsumerals[125]="CXXVI";	
               allNumeralsumerals[126]="CXXVII";	
               allNumeralsumerals[127]="CXXVIII";	
               allNumeralsumerals[128]="CXXIX";	
               allNumeralsumerals[129]="CXXX";	
               allNumeralsumerals[130]="CXXXI";	
               allNumeralsumerals[131]="CXXXII";	
               allNumeralsumerals[132]="CXXXIII";	
               allNumeralsumerals[133]="CXXXIV";	
               allNumeralsumerals[134]="CXXXV";	
               allNumeralsumerals[135]="CXXXVI";	
               allNumeralsumerals[136]="CXXXVII";	
               allNumeralsumerals[137]="CXXXVIII";	
               allNumeralsumerals[138]="CXXXIX";	
               allNumeralsumerals[139]="CXL";	
               allNumeralsumerals[140]="CXLI";	
               allNumeralsumerals[141]="CXLII";	
               allNumeralsumerals[142]="CXLIII";	
               allNumeralsumerals[143]="CXLIV";	
               allNumeralsumerals[144]="CXLV";	
               allNumeralsumerals[145]="CXLVI";	
               allNumeralsumerals[146]="CXLVII";	
               allNumeralsumerals[147]="CXLVIII";	
               allNumeralsumerals[148]="CXLIX";	
               allNumeralsumerals[149]="CL";	
               allNumeralsumerals[150]="CLI";	
               allNumeralsumerals[151]="CLII";	
               allNumeralsumerals[152]="CLIII";	
               allNumeralsumerals[153]="CLIV";	
               allNumeralsumerals[154]="CLV";	
               allNumeralsumerals[155]="CLVI";	
               allNumeralsumerals[156]="CLVII";	
               allNumeralsumerals[157]="CLVIII";	
               allNumeralsumerals[158]="CLIX";	
               allNumeralsumerals[159]="CLX";	
               allNumeralsumerals[160]="CLXI";	
               allNumeralsumerals[161]="CLXII";	
               allNumeralsumerals[162]="CLXIII";	
               allNumeralsumerals[163]="CLXIV";	
               allNumeralsumerals[164]="CLXV";	
               allNumeralsumerals[165]="CLXVI";	
               allNumeralsumerals[166]="CLXVII";	
               allNumeralsumerals[167]="CLXVIII";	
               allNumeralsumerals[168]="CLXIX";	
               allNumeralsumerals[169]="CLXX";	
               allNumeralsumerals[170]="CLXXI";	
               allNumeralsumerals[171]="CLXXII";	
               allNumeralsumerals[172]="CLXXIII";	
               allNumeralsumerals[173]="CLXXIV";	
               allNumeralsumerals[174]="CLXXV";	
               allNumeralsumerals[175]="CLXXVI";	
               allNumeralsumerals[176]="CLXXVII";	
               allNumeralsumerals[177]="CLXXVIII";	
               allNumeralsumerals[178]="CLXXIX";	
               allNumeralsumerals[179]="CLXXX";	
               allNumeralsumerals[180]="CLXXXI";	
               allNumeralsumerals[181]="CLXXXII";	
               allNumeralsumerals[182]="CLXXXIII";	
               allNumeralsumerals[183]="CLXXXIV";	
               allNumeralsumerals[184]="CLXXXV";	
               allNumeralsumerals[185]="CLXXXVI";	
               allNumeralsumerals[186]="CLXXXVII";	
               allNumeralsumerals[187]="CLXXXVIII";	
               allNumeralsumerals[188]="CLXXXIX";	
               allNumeralsumerals[189]="CXC";	
               allNumeralsumerals[190]="CXCI";	
               allNumeralsumerals[191]="CXCII";	
               allNumeralsumerals[192]="CXCIII";	
               allNumeralsumerals[193]="CXCIV";	
               allNumeralsumerals[194]="CXCV";	
               allNumeralsumerals[195]="CXCVI";	
               allNumeralsumerals[196]="CXCVII";	
               allNumeralsumerals[197]="CXCVIII";	
               allNumeralsumerals[198]="CXCIX";	
               allNumeralsumerals[199]="CC";	
               allNumeralsumerals[200]="CCI";	
               allNumeralsumerals[201]="CCII";	
               allNumeralsumerals[202]="CCIII";	
               allNumeralsumerals[203]="CCIV";	
               allNumeralsumerals[204]="CCV";	
               allNumeralsumerals[205]="CCVI";	
               allNumeralsumerals[206]="CCVII";	
               allNumeralsumerals[207]="CCVIII";	
               allNumeralsumerals[208]="CCIX";	
               allNumeralsumerals[209]="CCX";	
               allNumeralsumerals[210]="CCXI";	
               allNumeralsumerals[211]="CCXII";	
               allNumeralsumerals[212]="CCXIII";	
               allNumeralsumerals[213]="CCXIV";	
               allNumeralsumerals[214]="CCXV";	
               allNumeralsumerals[215]="CCXVI";	
               allNumeralsumerals[216]="CCXVII";	
               allNumeralsumerals[217]="CCXVIII";	
               allNumeralsumerals[218]="CCXIX";	
               allNumeralsumerals[219]="CCXX";	
               allNumeralsumerals[220]="CCXXI";	
               allNumeralsumerals[221]="CCXXII";	
               allNumeralsumerals[222]="CCXXIII";	
               allNumeralsumerals[223]="CCXXIV";	
               allNumeralsumerals[224]="CCXXV";	
               allNumeralsumerals[225]="CCXXVI";	
               allNumeralsumerals[226]="CCXXVII";	
               allNumeralsumerals[227]="CCXXVIII";	
               allNumeralsumerals[228]="CCXXIX";	
               allNumeralsumerals[229]="CCXXX";	
               allNumeralsumerals[230]="CCXXXI";	
               allNumeralsumerals[231]="CCXXXII";	
               allNumeralsumerals[232]="CCXXXIII";	
               allNumeralsumerals[233]="CCXXXIV";	
               allNumeralsumerals[234]="CCXXXV";	
               allNumeralsumerals[235]="CCXXXVI";	
               allNumeralsumerals[236]="CCXXXVII";	
               allNumeralsumerals[237]="CCXXXVIII";	
               allNumeralsumerals[238]="CCXXXIX";	
               allNumeralsumerals[239]="CCXL";	
               allNumeralsumerals[240]="CCXLI";	
               allNumeralsumerals[241]="CCXLII";	
               allNumeralsumerals[242]="CCXLIII";	
               allNumeralsumerals[243]="CCXLIV";	
               allNumeralsumerals[244]="CCXLV";	
               allNumeralsumerals[245]="CCXLVI";	
               allNumeralsumerals[246]="CCXLVII";	
               allNumeralsumerals[247]="CCXLVIII";	
               allNumeralsumerals[248]="CCXLIX";	
               allNumeralsumerals[249]="CCL";	
               allNumeralsumerals[250]="CCLI";	
               allNumeralsumerals[251]="CCLII";	
               allNumeralsumerals[252]="CCLIII";	
               allNumeralsumerals[253]="CCLIV";	
               allNumeralsumerals[254]="CCLV";	
               allNumeralsumerals[255]="CCLVI";	
               allNumeralsumerals[256]="CCLVII";	
               allNumeralsumerals[257]="CCLVIII";	
               allNumeralsumerals[258]="CCLIX";	
               allNumeralsumerals[259]="CCLX";	
               allNumeralsumerals[260]="CCLXI";	
               allNumeralsumerals[261]="CCLXII";	
               allNumeralsumerals[262]="CCLXIII";	
               allNumeralsumerals[263]="CCLXIV";	
               allNumeralsumerals[264]="CCLXV";	
               allNumeralsumerals[265]="CCLXVI";	
               allNumeralsumerals[266]="CCLXVII";	
               allNumeralsumerals[267]="CCLXVIII";	
               allNumeralsumerals[268]="CCLXIX";	
               allNumeralsumerals[269]="CCLXX";	
               allNumeralsumerals[270]="CCLXXI";	
               allNumeralsumerals[271]="CCLXXII";	
               allNumeralsumerals[272]="CCLXXIII";	
               allNumeralsumerals[273]="CCLXXIV";	
               allNumeralsumerals[274]="CCLXXV";	
               allNumeralsumerals[275]="CCLXXVI";	
               allNumeralsumerals[276]="CCLXXVII";	
               allNumeralsumerals[277]="CCLXXVIII";	
               allNumeralsumerals[278]="CCLXXIX";	
               allNumeralsumerals[279]="CCLXXX";	
               allNumeralsumerals[280]="CCLXXXI";	
               allNumeralsumerals[281]="CCLXXXII";	
               allNumeralsumerals[282]="CCLXXXIII";	
               allNumeralsumerals[283]="CCLXXXIV";	
               allNumeralsumerals[284]="CCLXXXV";	
               allNumeralsumerals[285]="CCLXXXVI";	
               allNumeralsumerals[286]="CCLXXXVII";	
               allNumeralsumerals[287]="CCLXXXVIII";	
               allNumeralsumerals[288]="CCLXXXIX";	
               allNumeralsumerals[289]="CCXC";	
               allNumeralsumerals[290]="CCXCI";	
               allNumeralsumerals[291]="CCXCII";	
               allNumeralsumerals[292]="CCXCIII";	
               allNumeralsumerals[293]="CCXCIV";	
               allNumeralsumerals[294]="CCXCV";	
               allNumeralsumerals[295]="CCXCVI";	
               allNumeralsumerals[296]="CCXCVII";	
               allNumeralsumerals[297]="CCXCVIII";	
               allNumeralsumerals[298]="CCXCIX";	
               allNumeralsumerals[299]="CCC";	
               allNumeralsumerals[300]="CCCI";	
               allNumeralsumerals[301]="CCCII";	
               allNumeralsumerals[302]="CCCIII";	
               allNumeralsumerals[303]="CCCIV";	
               allNumeralsumerals[304]="CCCV";	
               allNumeralsumerals[305]="CCCVI";	
               allNumeralsumerals[306]="CCCVII";	
               allNumeralsumerals[307]="CCCVIII";	
               allNumeralsumerals[308]="CCCIX";	
               allNumeralsumerals[309]="CCCX";	
               allNumeralsumerals[310]="CCCXI";	
               allNumeralsumerals[311]="CCCXII";	
               allNumeralsumerals[312]="CCCXIII";	
               allNumeralsumerals[313]="CCCXIV";	
               allNumeralsumerals[314]="CCCXV";	
               allNumeralsumerals[315]="CCCXVI";	
               allNumeralsumerals[316]="CCCXVII";	
               allNumeralsumerals[317]="CCCXVIII";	
               allNumeralsumerals[318]="CCCXIX";	
               allNumeralsumerals[319]="CCCXX";	
               allNumeralsumerals[320]="CCCXXI";	
               allNumeralsumerals[321]="CCCXXII";	
               allNumeralsumerals[322]="CCCXXIII";	
               allNumeralsumerals[323]="CCCXXIV";	
               allNumeralsumerals[324]="CCCXXV";	
               allNumeralsumerals[325]="CCCXXVI";	
               allNumeralsumerals[326]="CCCXXVII";	
               allNumeralsumerals[327]="CCCXXVIII";	
               allNumeralsumerals[328]="CCCXXIX";	
               allNumeralsumerals[329]="CCCXXX";	
               allNumeralsumerals[330]="CCCXXXI";	
               allNumeralsumerals[331]="CCCXXXII";	
               allNumeralsumerals[332]="CCCXXXIII";	
               allNumeralsumerals[333]="CCCXXXIV";	
               allNumeralsumerals[334]="CCCXXXV";	
               allNumeralsumerals[335]="CCCXXXVI";	
               allNumeralsumerals[336]="CCCXXXVII";	
               allNumeralsumerals[337]="CCCXXXVIII";	
               allNumeralsumerals[338]="CCCXXXIX";	
               allNumeralsumerals[339]="CCCXL";	
               allNumeralsumerals[340]="CCCXLI";	
               allNumeralsumerals[341]="CCCXLII";	
               allNumeralsumerals[342]="CCCXLIII";	
               allNumeralsumerals[343]="CCCXLIV";	
               allNumeralsumerals[344]="CCCXLV";	
               allNumeralsumerals[345]="CCCXLVI";	
               allNumeralsumerals[346]="CCCXLVII";	
               allNumeralsumerals[347]="CCCXLVIII";	
               allNumeralsumerals[348]="CCCXLIX";	
               allNumeralsumerals[349]="CCCL";	
               allNumeralsumerals[350]="CCCLI";	
               allNumeralsumerals[351]="CCCLII";	
               allNumeralsumerals[352]="CCCLIII";	
               allNumeralsumerals[353]="CCCLIV";	
               allNumeralsumerals[354]="CCCLV";	
               allNumeralsumerals[355]="CCCLVI";	
               allNumeralsumerals[356]="CCCLVII";	
               allNumeralsumerals[357]="CCCLVIII";	
               allNumeralsumerals[358]="CCCLIX";	
               allNumeralsumerals[359]="CCCLX";	
               allNumeralsumerals[360]="CCCLXI";	
               allNumeralsumerals[361]="CCCLXII";	
               allNumeralsumerals[362]="CCCLXIII";	
               allNumeralsumerals[363]="CCCLXIV";	
               allNumeralsumerals[364]="CCCLXV";	
               allNumeralsumerals[365]="CCCLXVI";	
               allNumeralsumerals[366]="CCCLXVII";	
               allNumeralsumerals[367]="CCCLXVIII";	
               allNumeralsumerals[368]="CCCLXIX";	
               allNumeralsumerals[369]="CCCLXX";	
               allNumeralsumerals[370]="CCCLXXI";	
               allNumeralsumerals[371]="CCCLXXII";	
               allNumeralsumerals[372]="CCCLXXIII";	
               allNumeralsumerals[373]="CCCLXXIV";	
               allNumeralsumerals[374]="CCCLXXV";	
               allNumeralsumerals[375]="CCCLXXVI";	
               allNumeralsumerals[376]="CCCLXXVII";	
               allNumeralsumerals[377]="CCCLXXVIII";	
               allNumeralsumerals[378]="CCCLXXIX";	
               allNumeralsumerals[379]="CCCLXXX";	
               allNumeralsumerals[380]="CCCLXXXI";	
               allNumeralsumerals[381]="CCCLXXXII";	
               allNumeralsumerals[382]="CCCLXXXIII";	
               allNumeralsumerals[383]="CCCLXXXIV";	
               allNumeralsumerals[384]="CCCLXXXV";	
               allNumeralsumerals[385]="CCCLXXXVI";	
               allNumeralsumerals[386]="CCCLXXXVII";	
               allNumeralsumerals[387]="CCCLXXXVIII";	
               allNumeralsumerals[388]="CCCLXXXIX";	
               allNumeralsumerals[389]="CCCXC";	
               allNumeralsumerals[390]="CCCXCI";	
               allNumeralsumerals[391]="CCCXCII";	
               allNumeralsumerals[392]="CCCXCIII";	
               allNumeralsumerals[393]="CCCXCIV";	
               allNumeralsumerals[394]="CCCXCV";	
               allNumeralsumerals[395]="CCCXCVI";	
               allNumeralsumerals[396]="CCCXCVII";	
               allNumeralsumerals[397]="CCCXCVIII";	
               allNumeralsumerals[398]="CCCXCIX";	
               allNumeralsumerals[399]="CD";	
               allNumeralsumerals[400]="CDI";	
               allNumeralsumerals[401]="CDII";	
               allNumeralsumerals[402]="CDIII";	
               allNumeralsumerals[403]="CDIV";	
               allNumeralsumerals[404]="CDV";	
               allNumeralsumerals[405]="CDVI";	
               allNumeralsumerals[406]="CDVII";	
               allNumeralsumerals[407]="CDVIII";	
               allNumeralsumerals[408]="CDIX";	
               allNumeralsumerals[409]="CDX";	
               allNumeralsumerals[410]="CDXI";	
               allNumeralsumerals[411]="CDXII";	
               allNumeralsumerals[412]="CDXIII";	
               allNumeralsumerals[413]="CDXIV";	
               allNumeralsumerals[414]="CDXV";	
               allNumeralsumerals[415]="CDXVI";	
               allNumeralsumerals[416]="CDXVII";	
               allNumeralsumerals[417]="CDXVIII";	
               allNumeralsumerals[418]="CDXIX";	
               allNumeralsumerals[419]="CDXX";	
               allNumeralsumerals[420]="CDXXI";	
               allNumeralsumerals[421]="CDXXII";	
               allNumeralsumerals[422]="CDXXIII";	
               allNumeralsumerals[423]="CDXXIV";	
               allNumeralsumerals[424]="CDXXV";	
               allNumeralsumerals[425]="CDXXVI";	
               allNumeralsumerals[426]="CDXXVII";	
               allNumeralsumerals[427]="CDXXVIII";	
               allNumeralsumerals[428]="CDXXIX";	
               allNumeralsumerals[429]="CDXXX";	
               allNumeralsumerals[430]="CDXXXI";	
               allNumeralsumerals[431]="CDXXXII";	
               allNumeralsumerals[432]="CDXXXIII";	
               allNumeralsumerals[433]="CDXXXIV";	
               allNumeralsumerals[434]="CDXXXV";	
               allNumeralsumerals[435]="CDXXXVI";	
               allNumeralsumerals[436]="CDXXXVII";	
               allNumeralsumerals[437]="CDXXXVIII";	
               allNumeralsumerals[438]="CDXXXIX";	
               allNumeralsumerals[439]="CDXL";	
               allNumeralsumerals[440]="CDXLI";	
               allNumeralsumerals[441]="CDXLII";	
               allNumeralsumerals[442]="CDXLIII";	
               allNumeralsumerals[443]="CDXLIV";	
               allNumeralsumerals[444]="CDXLV";	
               allNumeralsumerals[445]="CDXLVI";	
               allNumeralsumerals[446]="CDXLVII";	
               allNumeralsumerals[447]="CDXLVIII";	
               allNumeralsumerals[448]="CDXLIX";	
               allNumeralsumerals[449]="CDL";	
               allNumeralsumerals[450]="CDLI";	
               allNumeralsumerals[451]="CDLII";	
               allNumeralsumerals[452]="CDLIII";	
               allNumeralsumerals[453]="CDLIV";	
               allNumeralsumerals[454]="CDLV";	
               allNumeralsumerals[455]="CDLVI";	
               allNumeralsumerals[456]="CDLVII";	
               allNumeralsumerals[457]="CDLVIII";	
               allNumeralsumerals[458]="CDLIX";	
               allNumeralsumerals[459]="CDLX";	
               allNumeralsumerals[460]="CDLXI";	
               allNumeralsumerals[461]="CDLXII";	
               allNumeralsumerals[462]="CDLXIII";	
               allNumeralsumerals[463]="CDLXIV";	
               allNumeralsumerals[464]="CDLXV";	
               allNumeralsumerals[465]="CDLXVI";	
               allNumeralsumerals[466]="CDLXVII";	
               allNumeralsumerals[467]="CDLXVIII";	
               allNumeralsumerals[468]="CDLXIX";	
               allNumeralsumerals[469]="CDLXX";	
               allNumeralsumerals[470]="CDLXXI";	
               allNumeralsumerals[471]="CDLXXII";	
               allNumeralsumerals[472]="CDLXXIII";	
               allNumeralsumerals[473]="CDLXXIV";	
               allNumeralsumerals[474]="CDLXXV";	
               allNumeralsumerals[475]="CDLXXVI";	
               allNumeralsumerals[476]="CDLXXVII";	
               allNumeralsumerals[477]="CDLXXVIII";	
               allNumeralsumerals[478]="CDLXXIX";	
               allNumeralsumerals[479]="CDLXXX";	
               allNumeralsumerals[480]="CDLXXXI";	
               allNumeralsumerals[481]="CDLXXXII";	
               allNumeralsumerals[482]="CDLXXXIII";	
               allNumeralsumerals[483]="CDLXXXIV";	
               allNumeralsumerals[484]="CDLXXXV";	
               allNumeralsumerals[485]="CDLXXXVI";	
               allNumeralsumerals[486]="CDLXXXVII";	
               allNumeralsumerals[487]="CDLXXXVIII";	
               allNumeralsumerals[488]="CDLXXXIX";	
               allNumeralsumerals[489]="CDXC";	
               allNumeralsumerals[490]="CDXCI";	
               allNumeralsumerals[491]="CDXCII";	
               allNumeralsumerals[492]="CDXCIII";	
               allNumeralsumerals[493]="CDXCIV";	
               allNumeralsumerals[494]="CDXCV";	
               allNumeralsumerals[495]="CDXCVI";	
               allNumeralsumerals[496]="CDXCVII";	
               allNumeralsumerals[497]="CDXCVIII";	
               allNumeralsumerals[498]="CDXCIX";	
               allNumeralsumerals[499]="D";	
               allNumeralsumerals[500]="DI";	
               allNumeralsumerals[501]="DII";	
               allNumeralsumerals[502]="DIII";	
               allNumeralsumerals[503]="DIV";	
               allNumeralsumerals[504]="DV";	
               allNumeralsumerals[505]="DVI";	
               allNumeralsumerals[506]="DVII";	
               allNumeralsumerals[507]="DVIII";	
               allNumeralsumerals[508]="DIX";	
               allNumeralsumerals[509]="DX";	
               allNumeralsumerals[510]="DXI";	
               allNumeralsumerals[511]="DXII";	
               allNumeralsumerals[512]="DXIII";	
               allNumeralsumerals[513]="DXIV";	
               allNumeralsumerals[514]="DXV";	
               allNumeralsumerals[515]="DXVI";	
               allNumeralsumerals[516]="DXVII";	
               allNumeralsumerals[517]="DXVIII";	
               allNumeralsumerals[518]="DXIX";	
               allNumeralsumerals[519]="DXX";	
               allNumeralsumerals[520]="DXXI";	
               allNumeralsumerals[521]="DXXII";	
               allNumeralsumerals[522]="DXXIII";	
               allNumeralsumerals[523]="DXXIV";	
               allNumeralsumerals[524]="DXXV";	
               allNumeralsumerals[525]="DXXVI";	
               allNumeralsumerals[526]="DXXVII";	
               allNumeralsumerals[527]="DXXVIII";	
               allNumeralsumerals[528]="DXXIX";	
               allNumeralsumerals[529]="DXXX";	
               allNumeralsumerals[530]="DXXXI";	
               allNumeralsumerals[531]="DXXXII";	
               allNumeralsumerals[532]="DXXXIII";	
               allNumeralsumerals[533]="DXXXIV";	
               allNumeralsumerals[534]="DXXXV";	
               allNumeralsumerals[535]="DXXXVI";	
               allNumeralsumerals[536]="DXXXVII";	
               allNumeralsumerals[537]="DXXXVIII";	
               allNumeralsumerals[538]="DXXXIX";	
               allNumeralsumerals[539]="DXL";	
               allNumeralsumerals[540]="DXLI";	
               allNumeralsumerals[541]="DXLII";	
               allNumeralsumerals[542]="DXLIII";	
               allNumeralsumerals[543]="DXLIV";	
               allNumeralsumerals[544]="DXLV";	
               allNumeralsumerals[545]="DXLVI";	
               allNumeralsumerals[546]="DXLVII";	
               allNumeralsumerals[547]="DXLVIII";	
               allNumeralsumerals[548]="DXLIX";	
               allNumeralsumerals[549]="DL";	
               allNumeralsumerals[550]="DLI";	
               allNumeralsumerals[551]="DLII";	
               allNumeralsumerals[552]="DLIII";	
               allNumeralsumerals[553]="DLIV";	
               allNumeralsumerals[554]="DLV";	
               allNumeralsumerals[555]="DLVI";	
               allNumeralsumerals[556]="DLVII";	
               allNumeralsumerals[557]="DLVIII";	
               allNumeralsumerals[558]="DLIX";	
               allNumeralsumerals[559]="DLX";	
               allNumeralsumerals[560]="DLXI";	
               allNumeralsumerals[561]="DLXII";	
               allNumeralsumerals[562]="DLXIII";	
               allNumeralsumerals[563]="DLXIV";	
               allNumeralsumerals[564]="DLXV";	
               allNumeralsumerals[565]="DLXVI";	
               allNumeralsumerals[566]="DLXVII";	
               allNumeralsumerals[567]="DLXVIII";	
               allNumeralsumerals[568]="DLXIX";	
               allNumeralsumerals[569]="DLXX";	
               allNumeralsumerals[570]="DLXXI";	
               allNumeralsumerals[571]="DLXXII";	
               allNumeralsumerals[572]="DLXXIII";	
               allNumeralsumerals[573]="DLXXIV";	
               allNumeralsumerals[574]="DLXXV";	
               allNumeralsumerals[575]="DLXXVI";	
               allNumeralsumerals[576]="DLXXVII";	
               allNumeralsumerals[577]="DLXXVIII";	
               allNumeralsumerals[578]="DLXXIX";	
               allNumeralsumerals[579]="DLXXX";	
               allNumeralsumerals[580]="DLXXXI";	
               allNumeralsumerals[581]="DLXXXII";	
               allNumeralsumerals[582]="DLXXXIII";	
               allNumeralsumerals[583]="DLXXXIV";	
               allNumeralsumerals[584]="DLXXXV";	
               allNumeralsumerals[585]="DLXXXVI";	
               allNumeralsumerals[586]="DLXXXVII";	
               allNumeralsumerals[587]="DLXXXVIII";	
               allNumeralsumerals[588]="DLXXXIX";	
               allNumeralsumerals[589]="DXC";	
               allNumeralsumerals[590]="DXCI";	
               allNumeralsumerals[591]="DXCII";	
               allNumeralsumerals[592]="DXCIII";	
               allNumeralsumerals[593]="DXCIV";	
               allNumeralsumerals[594]="DXCV";	
               allNumeralsumerals[595]="DXCVI";	
               allNumeralsumerals[596]="DXCVII";	
               allNumeralsumerals[597]="DXCVIII";	
               allNumeralsumerals[598]="DXCIX";	
               allNumeralsumerals[599]="DC";	
               allNumeralsumerals[600]="DCI";	
               allNumeralsumerals[601]="DCII";	
               allNumeralsumerals[602]="DCIII";	
               allNumeralsumerals[603]="DCIV";	
               allNumeralsumerals[604]="DCV";	
               allNumeralsumerals[605]="DCVI";	
               allNumeralsumerals[606]="DCVII";	
               allNumeralsumerals[607]="DCVIII";	
               allNumeralsumerals[608]="DCIX";	
               allNumeralsumerals[609]="DCX";	
               allNumeralsumerals[610]="DCXI";	
               allNumeralsumerals[611]="DCXII";	
               allNumeralsumerals[612]="DCXIII";	
               allNumeralsumerals[613]="DCXIV";	
               allNumeralsumerals[614]="DCXV";	
               allNumeralsumerals[615]="DCXVI";	
               allNumeralsumerals[616]="DCXVII";	
               allNumeralsumerals[617]="DCXVIII";	
               allNumeralsumerals[618]="DCXIX";	
               allNumeralsumerals[619]="DCXX";	
               allNumeralsumerals[620]="DCXXI";	
               allNumeralsumerals[621]="DCXXII";	
               allNumeralsumerals[622]="DCXXIII";	
               allNumeralsumerals[623]="DCXXIV";	
               allNumeralsumerals[624]="DCXXV";	
               allNumeralsumerals[625]="DCXXVI";	
               allNumeralsumerals[626]="DCXXVII";	
               allNumeralsumerals[627]="DCXXVIII";	
               allNumeralsumerals[628]="DCXXIX";	
               allNumeralsumerals[629]="DCXXX";	
               allNumeralsumerals[630]="DCXXXI";	
               allNumeralsumerals[631]="DCXXXII";	
               allNumeralsumerals[632]="DCXXXIII";	
               allNumeralsumerals[633]="DCXXXIV";	
               allNumeralsumerals[634]="DCXXXV";	
               allNumeralsumerals[635]="DCXXXVI";	
               allNumeralsumerals[636]="DCXXXVII";	
               allNumeralsumerals[637]="DCXXXVIII";	
               allNumeralsumerals[638]="DCXXXIX";	
               allNumeralsumerals[639]="DCXL";	
               allNumeralsumerals[640]="DCXLI";	
               allNumeralsumerals[641]="DCXLII";	
               allNumeralsumerals[642]="DCXLIII";	
               allNumeralsumerals[643]="DCXLIV";	
               allNumeralsumerals[644]="DCXLV";	
               allNumeralsumerals[645]="DCXLVI";	
               allNumeralsumerals[646]="DCXLVII";	
               allNumeralsumerals[647]="DCXLVIII";	
               allNumeralsumerals[648]="DCXLIX";	
               allNumeralsumerals[649]="DCL";	
               allNumeralsumerals[650]="DCLI";	
               allNumeralsumerals[651]="DCLII";	
               allNumeralsumerals[652]="DCLIII";	
               allNumeralsumerals[653]="DCLIV";	
               allNumeralsumerals[654]="DCLV";	
               allNumeralsumerals[655]="DCLVI";	
               allNumeralsumerals[656]="DCLVII";	
               allNumeralsumerals[657]="DCLVIII";	
               allNumeralsumerals[658]="DCLIX";	
               allNumeralsumerals[659]="DCLX";	
               allNumeralsumerals[660]="DCLXI";	
               allNumeralsumerals[661]="DCLXII";	
               allNumeralsumerals[662]="DCLXIII";	
               allNumeralsumerals[663]="DCLXIV";	
               allNumeralsumerals[664]="DCLXV";	
               allNumeralsumerals[665]="DCLXVI";	
               allNumeralsumerals[666]="DCLXVII";	
               allNumeralsumerals[667]="DCLXVIII";	
               allNumeralsumerals[668]="DCLXIX";	
               allNumeralsumerals[669]="DCLXX";	
               allNumeralsumerals[670]="DCLXXI";	
               allNumeralsumerals[671]="DCLXXII";	
               allNumeralsumerals[672]="DCLXXIII";	
               allNumeralsumerals[673]="DCLXXIV";	
               allNumeralsumerals[674]="DCLXXV";	
               allNumeralsumerals[675]="DCLXXVI";	
               allNumeralsumerals[676]="DCLXXVII";	
               allNumeralsumerals[677]="DCLXXVIII";	
               allNumeralsumerals[678]="DCLXXIX";	
               allNumeralsumerals[679]="DCLXXX";	
               allNumeralsumerals[680]="DCLXXXI";	
               allNumeralsumerals[681]="DCLXXXII";	
               allNumeralsumerals[682]="DCLXXXIII";	
               allNumeralsumerals[683]="DCLXXXIV";	
               allNumeralsumerals[684]="DCLXXXV";	
               allNumeralsumerals[685]="DCLXXXVI";	
               allNumeralsumerals[686]="DCLXXXVII";	
               allNumeralsumerals[687]="DCLXXXVIII";	
               allNumeralsumerals[688]="DCLXXXIX";	
               allNumeralsumerals[689]="DCXC";	
               allNumeralsumerals[690]="DCXCI";	
               allNumeralsumerals[691]="DCXCII";	
               allNumeralsumerals[692]="DCXCIII";	
               allNumeralsumerals[693]="DCXCIV";	
               allNumeralsumerals[694]="DCXCV";	
               allNumeralsumerals[695]="DCXCVI";	
               allNumeralsumerals[696]="DCXCVII";	
               allNumeralsumerals[697]="DCXCVIII";	
               allNumeralsumerals[698]="DCXCIX";	
               allNumeralsumerals[699]="DCC";	
               allNumeralsumerals[700]="DCCI";	
               allNumeralsumerals[701]="DCCII";	
               allNumeralsumerals[702]="DCCIII";	
               allNumeralsumerals[703]="DCCIV";	
               allNumeralsumerals[704]="DCCV";	
               allNumeralsumerals[705]="DCCVI";	
               allNumeralsumerals[706]="DCCVII";	
               allNumeralsumerals[707]="DCCVIII";	
               allNumeralsumerals[708]="DCCIX";	
               allNumeralsumerals[709]="DCCX";	
               allNumeralsumerals[710]="DCCXI";	
               allNumeralsumerals[711]="DCCXII";	
               allNumeralsumerals[712]="DCCXIII";	
               allNumeralsumerals[713]="DCCXIV";	
               allNumeralsumerals[714]="DCCXV";	
               allNumeralsumerals[715]="DCCXVI";	
               allNumeralsumerals[716]="DCCXVII";	
               allNumeralsumerals[717]="DCCXVIII";	
               allNumeralsumerals[718]="DCCXIX";	
               allNumeralsumerals[719]="DCCXX";	
               allNumeralsumerals[720]="DCCXXI";	
               allNumeralsumerals[721]="DCCXXII";	
               allNumeralsumerals[722]="DCCXXIII";	
               allNumeralsumerals[723]="DCCXXIV";	
               allNumeralsumerals[724]="DCCXXV";	
               allNumeralsumerals[725]="DCCXXVI";	
               allNumeralsumerals[726]="DCCXXVII";	
               allNumeralsumerals[727]="DCCXXVIII";	
               allNumeralsumerals[728]="DCCXXIX";	
               allNumeralsumerals[729]="DCCXXX";	
               allNumeralsumerals[730]="DCCXXXI";	
               allNumeralsumerals[731]="DCCXXXII";	
               allNumeralsumerals[732]="DCCXXXIII";	
               allNumeralsumerals[733]="DCCXXXIV";	
               allNumeralsumerals[734]="DCCXXXV";	
               allNumeralsumerals[735]="DCCXXXVI";	
               allNumeralsumerals[736]="DCCXXXVII";	
               allNumeralsumerals[737]="DCCXXXVIII";	
               allNumeralsumerals[738]="DCCXXXIX";	
               allNumeralsumerals[739]="DCCXL";	
               allNumeralsumerals[740]="DCCXLI";	
               allNumeralsumerals[741]="DCCXLII";	
               allNumeralsumerals[742]="DCCXLIII";	
               allNumeralsumerals[743]="DCCXLIV";	
               allNumeralsumerals[744]="DCCXLV";	
               allNumeralsumerals[745]="DCCXLVI";	
               allNumeralsumerals[746]="DCCXLVII";	
               allNumeralsumerals[747]="DCCXLVIII";	
               allNumeralsumerals[748]="DCCXLIX";	
               allNumeralsumerals[749]="DCCL";	
               allNumeralsumerals[750]="DCCLI";	
               allNumeralsumerals[751]="DCCLII";	
               allNumeralsumerals[752]="DCCLIII";	
               allNumeralsumerals[753]="DCCLIV";	
               allNumeralsumerals[754]="DCCLV";	
               allNumeralsumerals[755]="DCCLVI";	
               allNumeralsumerals[756]="DCCLVII";	
               allNumeralsumerals[757]="DCCLVIII";	
               allNumeralsumerals[758]="DCCLIX";	
               allNumeralsumerals[759]="DCCLX";	
               allNumeralsumerals[760]="DCCLXI";	
               allNumeralsumerals[761]="DCCLXII";	
               allNumeralsumerals[762]="DCCLXIII";	
               allNumeralsumerals[763]="DCCLXIV";	
               allNumeralsumerals[764]="DCCLXV";	
               allNumeralsumerals[765]="DCCLXVI";	
               allNumeralsumerals[766]="DCCLXVII";	
               allNumeralsumerals[767]="DCCLXVIII";	
               allNumeralsumerals[768]="DCCLXIX";	
               allNumeralsumerals[769]="DCCLXX";	
               allNumeralsumerals[770]="DCCLXXI";	
               allNumeralsumerals[771]="DCCLXXII";	
               allNumeralsumerals[772]="DCCLXXIII";	
               allNumeralsumerals[773]="DCCLXXIV";	
               allNumeralsumerals[774]="DCCLXXV";	
               allNumeralsumerals[775]="DCCLXXVI";	
               allNumeralsumerals[776]="DCCLXXVII";	
               allNumeralsumerals[777]="DCCLXXVIII";	
               allNumeralsumerals[778]="DCCLXXIX";	
               allNumeralsumerals[779]="DCCLXXX";	
               allNumeralsumerals[780]="DCCLXXXI";	
               allNumeralsumerals[781]="DCCLXXXII";	
               allNumeralsumerals[782]="DCCLXXXIII";	
               allNumeralsumerals[783]="DCCLXXXIV";	
               allNumeralsumerals[784]="DCCLXXXV";	
               allNumeralsumerals[785]="DCCLXXXVI";	
               allNumeralsumerals[786]="DCCLXXXVII";	
               allNumeralsumerals[787]="DCCLXXXVIII";	
               allNumeralsumerals[788]="DCCLXXXIX";	
               allNumeralsumerals[789]="DCCXC";	
               allNumeralsumerals[790]="DCCXCI";	
               allNumeralsumerals[791]="DCCXCII";	
               allNumeralsumerals[792]="DCCXCIII";	
               allNumeralsumerals[793]="DCCXCIV";	
               allNumeralsumerals[794]="DCCXCV";	
               allNumeralsumerals[795]="DCCXCVI";	
               allNumeralsumerals[796]="DCCXCVII";	
               allNumeralsumerals[797]="DCCXCVIII";	
               allNumeralsumerals[798]="DCCXCIX";	
               allNumeralsumerals[799]="DCCC";	
               allNumeralsumerals[800]="DCCCI";	
               allNumeralsumerals[801]="DCCCII";	
               allNumeralsumerals[802]="DCCCIII";	
               allNumeralsumerals[803]="DCCCIV";	
               allNumeralsumerals[804]="DCCCV";	
               allNumeralsumerals[805]="DCCCVI";	
               allNumeralsumerals[806]="DCCCVII";	
               allNumeralsumerals[807]="DCCCVIII";	
               allNumeralsumerals[808]="DCCCIX";	
               allNumeralsumerals[809]="DCCCX";	
               allNumeralsumerals[810]="DCCCXI";	
               allNumeralsumerals[811]="DCCCXII";	
               allNumeralsumerals[812]="DCCCXIII";	
               allNumeralsumerals[813]="DCCCXIV";	
               allNumeralsumerals[814]="DCCCXV";	
               allNumeralsumerals[815]="DCCCXVI";	
               allNumeralsumerals[816]="DCCCXVII";	
               allNumeralsumerals[817]="DCCCXVIII";	
               allNumeralsumerals[818]="DCCCXIX";	
               allNumeralsumerals[819]="DCCCXX";	
               allNumeralsumerals[820]="DCCCXXI";	
               allNumeralsumerals[821]="DCCCXXII";	
               allNumeralsumerals[822]="DCCCXXIII";	
               allNumeralsumerals[823]="DCCCXXIV";	
               allNumeralsumerals[824]="DCCCXXV";	
               allNumeralsumerals[825]="DCCCXXVI";	
               allNumeralsumerals[826]="DCCCXXVII";	
               allNumeralsumerals[827]="DCCCXXVIII";	
               allNumeralsumerals[828]="DCCCXXIX";	
               allNumeralsumerals[829]="DCCCXXX";	
               allNumeralsumerals[830]="DCCCXXXI";	
               allNumeralsumerals[831]="DCCCXXXII";	
               allNumeralsumerals[832]="DCCCXXXIII";	
               allNumeralsumerals[833]="DCCCXXXIV";	
               allNumeralsumerals[834]="DCCCXXXV";	
               allNumeralsumerals[835]="DCCCXXXVI";	
               allNumeralsumerals[836]="DCCCXXXVII";	
               allNumeralsumerals[837]="DCCCXXXVIII";	
               allNumeralsumerals[838]="DCCCXXXIX";	
               allNumeralsumerals[839]="DCCCXL";	
               allNumeralsumerals[840]="DCCCXLI";	
               allNumeralsumerals[841]="DCCCXLII";	
               allNumeralsumerals[842]="DCCCXLIII";	
               allNumeralsumerals[843]="DCCCXLIV";	
               allNumeralsumerals[844]="DCCCXLV";	
               allNumeralsumerals[845]="DCCCXLVI";	
               allNumeralsumerals[846]="DCCCXLVII";	
               allNumeralsumerals[847]="DCCCXLVIII";	
               allNumeralsumerals[848]="DCCCXLIX";	
               allNumeralsumerals[849]="DCCCL";	
               allNumeralsumerals[850]="DCCCLI";	
               allNumeralsumerals[851]="DCCCLII";	
               allNumeralsumerals[852]="DCCCLIII";	
               allNumeralsumerals[853]="DCCCLIV";	
               allNumeralsumerals[854]="DCCCLV";	
               allNumeralsumerals[855]="DCCCLVI";	
               allNumeralsumerals[856]="DCCCLVII";	
               allNumeralsumerals[857]="DCCCLVIII";	
               allNumeralsumerals[858]="DCCCLIX";	
               allNumeralsumerals[859]="DCCCLX";	
               allNumeralsumerals[860]="DCCCLXI";	
               allNumeralsumerals[861]="DCCCLXII";	
               allNumeralsumerals[862]="DCCCLXIII";	
               allNumeralsumerals[863]="DCCCLXIV";	
               allNumeralsumerals[864]="DCCCLXV";	
               allNumeralsumerals[865]="DCCCLXVI";	
               allNumeralsumerals[866]="DCCCLXVII";	
               allNumeralsumerals[867]="DCCCLXVIII";	
               allNumeralsumerals[868]="DCCCLXIX";	
               allNumeralsumerals[869]="DCCCLXX";	
               allNumeralsumerals[870]="DCCCLXXI";	
               allNumeralsumerals[871]="DCCCLXXII";	
               allNumeralsumerals[872]="DCCCLXXIII";	
               allNumeralsumerals[873]="DCCCLXXIV";	
               allNumeralsumerals[874]="DCCCLXXV";	
               allNumeralsumerals[875]="DCCCLXXVI";	
               allNumeralsumerals[876]="DCCCLXXVII";	
               allNumeralsumerals[877]="DCCCLXXVIII";	
               allNumeralsumerals[878]="DCCCLXXIX";	
               allNumeralsumerals[879]="DCCCLXXX";	
               allNumeralsumerals[880]="DCCCLXXXI";	
               allNumeralsumerals[881]="DCCCLXXXII";	
               allNumeralsumerals[882]="DCCCLXXXIII";	
               allNumeralsumerals[883]="DCCCLXXXIV";	
               allNumeralsumerals[884]="DCCCLXXXV";	
               allNumeralsumerals[885]="DCCCLXXXVI";	
               allNumeralsumerals[886]="DCCCLXXXVII";	
               allNumeralsumerals[887]="DCCCLXXXVIII";	
               allNumeralsumerals[888]="DCCCLXXXIX";	
               allNumeralsumerals[889]="DCCCXC";	
               allNumeralsumerals[890]="DCCCXCI";	
               allNumeralsumerals[891]="DCCCXCII";	
               allNumeralsumerals[892]="DCCCXCIII";	
               allNumeralsumerals[893]="DCCCXCIV";	
               allNumeralsumerals[894]="DCCCXCV";	
               allNumeralsumerals[895]="DCCCXCVI";	
               allNumeralsumerals[896]="DCCCXCVII";	
               allNumeralsumerals[897]="DCCCXCVIII";	
               allNumeralsumerals[898]="DCCCXCIX";	
               allNumeralsumerals[899]="CM";	
               allNumeralsumerals[900]="CMI";	
               allNumeralsumerals[901]="CMII";	
               allNumeralsumerals[902]="CMIII";	
               allNumeralsumerals[903]="CMIV";	
               allNumeralsumerals[904]="CMV";	
               allNumeralsumerals[905]="CMVI";	
               allNumeralsumerals[906]="CMVII";	
               allNumeralsumerals[907]="CMVIII";	
               allNumeralsumerals[908]="CMIX";	
               allNumeralsumerals[909]="CMX";	
               allNumeralsumerals[910]="CMXI";	
               allNumeralsumerals[911]="CMXII";	
               allNumeralsumerals[912]="CMXIII";	
               allNumeralsumerals[913]="CMXIV";	
               allNumeralsumerals[914]="CMXV";	
               allNumeralsumerals[915]="CMXVI";	
               allNumeralsumerals[916]="CMXVII";	
               allNumeralsumerals[917]="CMXVIII";	
               allNumeralsumerals[918]="CMXIX";	
               allNumeralsumerals[919]="CMXX";	
               allNumeralsumerals[920]="CMXXI";	
               allNumeralsumerals[921]="CMXXII";	
               allNumeralsumerals[922]="CMXXIII";	
               allNumeralsumerals[923]="CMXXIV";	
               allNumeralsumerals[924]="CMXXV";	
               allNumeralsumerals[925]="CMXXVI";	
               allNumeralsumerals[926]="CMXXVII";	
               allNumeralsumerals[927]="CMXXVIII";	
               allNumeralsumerals[928]="CMXXIX";	
               allNumeralsumerals[929]="CMXXX";	
               allNumeralsumerals[930]="CMXXXI";	
               allNumeralsumerals[931]="CMXXXII";	
               allNumeralsumerals[932]="CMXXXIII";	
               allNumeralsumerals[933]="CMXXXIV";	
               allNumeralsumerals[934]="CMXXXV";	
               allNumeralsumerals[935]="CMXXXVI";	
               allNumeralsumerals[936]="CMXXXVII";	
               allNumeralsumerals[937]="CMXXXVIII";	
               allNumeralsumerals[938]="CMXXXIX";	
               allNumeralsumerals[939]="CMXL";	
               allNumeralsumerals[940]="CMXLI";	
               allNumeralsumerals[941]="CMXLII";	
               allNumeralsumerals[942]="CMXLIII";	
               allNumeralsumerals[943]="CMXLIV";	
               allNumeralsumerals[944]="CMXLV";	
               allNumeralsumerals[945]="CMXLVI";	
               allNumeralsumerals[946]="CMXLVII";	
               allNumeralsumerals[947]="CMXLVIII";	
               allNumeralsumerals[948]="CMXLIX";	
               allNumeralsumerals[949]="CML";	
               allNumeralsumerals[950]="CMLI";	
               allNumeralsumerals[951]="CMLII";	
               allNumeralsumerals[952]="CMLIII";	
               allNumeralsumerals[953]="CMLIV";	
               allNumeralsumerals[954]="CMLV";	
               allNumeralsumerals[955]="CMLVI";	
               allNumeralsumerals[956]="CMLVII";	
               allNumeralsumerals[957]="CMLVIII";	
               allNumeralsumerals[958]="CMLIX";	
               allNumeralsumerals[959]="CMLX";	
               allNumeralsumerals[960]="CMLXI";	
               allNumeralsumerals[961]="CMLXII";	
               allNumeralsumerals[962]="CMLXIII";	
               allNumeralsumerals[963]="CMLXIV";	
               allNumeralsumerals[964]="CMLXV";	
               allNumeralsumerals[965]="CMLXVI";	
               allNumeralsumerals[966]="CMLXVII";	
               allNumeralsumerals[967]="CMLXVIII";	
               allNumeralsumerals[968]="CMLXIX";	
               allNumeralsumerals[969]="CMLXX";	
               allNumeralsumerals[970]="CMLXXI";	
               allNumeralsumerals[971]="CMLXXII";	
               allNumeralsumerals[972]="CMLXXIII";	
               allNumeralsumerals[973]="CMLXXIV";	
               allNumeralsumerals[974]="CMLXXV";	
               allNumeralsumerals[975]="CMLXXVI";	
               allNumeralsumerals[976]="CMLXXVII";	
               allNumeralsumerals[977]="CMLXXVIII";	
               allNumeralsumerals[978]="CMLXXIX";	
               allNumeralsumerals[979]="CMLXXX";	
               allNumeralsumerals[980]="CMLXXXI";	
               allNumeralsumerals[981]="CMLXXXII";	
               allNumeralsumerals[982]="CMLXXXIII";	
               allNumeralsumerals[983]="CMLXXXIV";	
               allNumeralsumerals[984]="CMLXXXV";	
               allNumeralsumerals[985]="CMLXXXVI";	
               allNumeralsumerals[986]="CMLXXXVII";	
               allNumeralsumerals[987]="CMLXXXVIII";	
               allNumeralsumerals[988]="CMLXXXIX";	
               allNumeralsumerals[989]="CMXC";	
               allNumeralsumerals[990]="CMXCI";	
               allNumeralsumerals[991]="CMXCII";	
               allNumeralsumerals[992]="CMXCIII";	
               allNumeralsumerals[993]="CMXCIV";	
               allNumeralsumerals[994]="CMXCV";	
               allNumeralsumerals[995]="CMXCVI";	
               allNumeralsumerals[996]="CMXCVII";	
               allNumeralsumerals[997]="CMXCVIII";	
               allNumeralsumerals[998]="CMXCIX";	
               allNumeralsumerals[999]="M";	
               allNumeralsumerals[1000]="MI";	
               allNumeralsumerals[1001]="MII";	
               allNumeralsumerals[1002]="MIII";	
               allNumeralsumerals[1003]="MIV";	
               allNumeralsumerals[1004]="MV";	
               allNumeralsumerals[1005]="MVI";	
               allNumeralsumerals[1006]="MVII";	
               allNumeralsumerals[1007]="MVIII";	
               allNumeralsumerals[1008]="MIX";	
               allNumeralsumerals[1009]="MX";	
               allNumeralsumerals[1010]="MXI";	
               allNumeralsumerals[1011]="MXII";	
               allNumeralsumerals[1012]="MXIII";	
               allNumeralsumerals[1013]="MXIV";	
               allNumeralsumerals[1014]="MXV";	
               allNumeralsumerals[1015]="MXVI";	
               allNumeralsumerals[1016]="MXVII";	
               allNumeralsumerals[1017]="MXVIII";	
               allNumeralsumerals[1018]="MXIX";	
               allNumeralsumerals[1019]="MXX";	
               allNumeralsumerals[1020]="MXXI";	
               allNumeralsumerals[1021]="MXXII";	
               allNumeralsumerals[1022]="MXXIII";	
               allNumeralsumerals[1023]="MXXIV";	
               allNumeralsumerals[1024]="MXXV";	
               allNumeralsumerals[1025]="MXXVI";	
               allNumeralsumerals[1026]="MXXVII";	
               allNumeralsumerals[1027]="MXXVIII";	
               allNumeralsumerals[1028]="MXXIX";	
               allNumeralsumerals[1029]="MXXX";	
               allNumeralsumerals[1030]="MXXXI";	
               allNumeralsumerals[1031]="MXXXII";	
               allNumeralsumerals[1032]="MXXXIII";	
               allNumeralsumerals[1033]="MXXXIV";	
               allNumeralsumerals[1034]="MXXXV";	
               allNumeralsumerals[1035]="MXXXVI";	
               allNumeralsumerals[1036]="MXXXVII";	
               allNumeralsumerals[1037]="MXXXVIII";	
               allNumeralsumerals[1038]="MXXXIX";	
               allNumeralsumerals[1039]="MXL";	
               allNumeralsumerals[1040]="MXLI";	
               allNumeralsumerals[1041]="MXLII";	
               allNumeralsumerals[1042]="MXLIII";	
               allNumeralsumerals[1043]="MXLIV";	
               allNumeralsumerals[1044]="MXLV";	
               allNumeralsumerals[1045]="MXLVI";	
               allNumeralsumerals[1046]="MXLVII";	
               allNumeralsumerals[1047]="MXLVIII";	
               allNumeralsumerals[1048]="MXLIX";	
               allNumeralsumerals[1049]="ML";	
               allNumeralsumerals[1050]="MLI";	
               allNumeralsumerals[1051]="MLII";	
               allNumeralsumerals[1052]="MLIII";	
               allNumeralsumerals[1053]="MLIV";	
               allNumeralsumerals[1054]="MLV";	
               allNumeralsumerals[1055]="MLVI";	
               allNumeralsumerals[1056]="MLVII";	
               allNumeralsumerals[1057]="MLVIII";	
               allNumeralsumerals[1058]="MLIX";	
               allNumeralsumerals[1059]="MLX";	
               allNumeralsumerals[1060]="MLXI";	
               allNumeralsumerals[1061]="MLXII";	
               allNumeralsumerals[1062]="MLXIII";	
               allNumeralsumerals[1063]="MLXIV";	
               allNumeralsumerals[1064]="MLXV";	
               allNumeralsumerals[1065]="MLXVI";	
               allNumeralsumerals[1066]="MLXVII";	
               allNumeralsumerals[1067]="MLXVIII";	
               allNumeralsumerals[1068]="MLXIX";	
               allNumeralsumerals[1069]="MLXX";	
               allNumeralsumerals[1070]="MLXXI";	
               allNumeralsumerals[1071]="MLXXII";	
               allNumeralsumerals[1072]="MLXXIII";	
               allNumeralsumerals[1073]="MLXXIV";	
               allNumeralsumerals[1074]="MLXXV";	
               allNumeralsumerals[1075]="MLXXVI";	
               allNumeralsumerals[1076]="MLXXVII";	
               allNumeralsumerals[1077]="MLXXVIII";	
               allNumeralsumerals[1078]="MLXXIX";	
               allNumeralsumerals[1079]="MLXXX";	
               allNumeralsumerals[1080]="MLXXXI";	
               allNumeralsumerals[1081]="MLXXXII";	
               allNumeralsumerals[1082]="MLXXXIII";	
               allNumeralsumerals[1083]="MLXXXIV";	
               allNumeralsumerals[1084]="MLXXXV";	
               allNumeralsumerals[1085]="MLXXXVI";	
               allNumeralsumerals[1086]="MLXXXVII";	
               allNumeralsumerals[1087]="MLXXXVIII";	
               allNumeralsumerals[1088]="MLXXXIX";	
               allNumeralsumerals[1089]="MXC";	
               allNumeralsumerals[1090]="MXCI";	
               allNumeralsumerals[1091]="MXCII";	
               allNumeralsumerals[1092]="MXCIII";	
               allNumeralsumerals[1093]="MXCIV";	
               allNumeralsumerals[1094]="MXCV";	
               allNumeralsumerals[1095]="MXCVI";	
               allNumeralsumerals[1096]="MXCVII";	
               allNumeralsumerals[1097]="MXCVIII";	
               allNumeralsumerals[1098]="MXCIX";	
               allNumeralsumerals[1099]="MC";	
               allNumeralsumerals[1100]="MCI";	
               allNumeralsumerals[1101]="MCII";	
               allNumeralsumerals[1102]="MCIII";	
               allNumeralsumerals[1103]="MCIV";	
               allNumeralsumerals[1104]="MCV";	
               allNumeralsumerals[1105]="MCVI";	
               allNumeralsumerals[1106]="MCVII";	
               allNumeralsumerals[1107]="MCVIII";	
               allNumeralsumerals[1108]="MCIX";	
               allNumeralsumerals[1109]="MCX";	
               allNumeralsumerals[1110]="MCXI";	
               allNumeralsumerals[1111]="MCXII";	
               allNumeralsumerals[1112]="MCXIII";	
               allNumeralsumerals[1113]="MCXIV";	
               allNumeralsumerals[1114]="MCXV";	
               allNumeralsumerals[1115]="MCXVI";	
               allNumeralsumerals[1116]="MCXVII";	
               allNumeralsumerals[1117]="MCXVIII";	
               allNumeralsumerals[1118]="MCXIX";	
               allNumeralsumerals[1119]="MCXX";	
               allNumeralsumerals[1120]="MCXXI";	
               allNumeralsumerals[1121]="MCXXII";	
               allNumeralsumerals[1122]="MCXXIII";	
               allNumeralsumerals[1123]="MCXXIV";	
               allNumeralsumerals[1124]="MCXXV";	
               allNumeralsumerals[1125]="MCXXVI";	
               allNumeralsumerals[1126]="MCXXVII";	
               allNumeralsumerals[1127]="MCXXVIII";	
               allNumeralsumerals[1128]="MCXXIX";	
               allNumeralsumerals[1129]="MCXXX";	
               allNumeralsumerals[1130]="MCXXXI";	
               allNumeralsumerals[1131]="MCXXXII";	
               allNumeralsumerals[1132]="MCXXXIII";	
               allNumeralsumerals[1133]="MCXXXIV";	
               allNumeralsumerals[1134]="MCXXXV";	
               allNumeralsumerals[1135]="MCXXXVI";	
               allNumeralsumerals[1136]="MCXXXVII";	
               allNumeralsumerals[1137]="MCXXXVIII";	
               allNumeralsumerals[1138]="MCXXXIX";	
               allNumeralsumerals[1139]="MCXL";	
               allNumeralsumerals[1140]="MCXLI";	
               allNumeralsumerals[1141]="MCXLII";	
               allNumeralsumerals[1142]="MCXLIII";	
               allNumeralsumerals[1143]="MCXLIV";	
               allNumeralsumerals[1144]="MCXLV";	
               allNumeralsumerals[1145]="MCXLVI";	
               allNumeralsumerals[1146]="MCXLVII";	
               allNumeralsumerals[1147]="MCXLVIII";	
               allNumeralsumerals[1148]="MCXLIX";	
               allNumeralsumerals[1149]="MCL";	
               allNumeralsumerals[1150]="MCLI";	
               allNumeralsumerals[1151]="MCLII";	
               allNumeralsumerals[1152]="MCLIII";	
               allNumeralsumerals[1153]="MCLIV";	
               allNumeralsumerals[1154]="MCLV";	
               allNumeralsumerals[1155]="MCLVI";	
               allNumeralsumerals[1156]="MCLVII";	
               allNumeralsumerals[1157]="MCLVIII";	
               allNumeralsumerals[1158]="MCLIX";	
               allNumeralsumerals[1159]="MCLX";	
               allNumeralsumerals[1160]="MCLXI";	
               allNumeralsumerals[1161]="MCLXII";	
               allNumeralsumerals[1162]="MCLXIII";	
               allNumeralsumerals[1163]="MCLXIV";	
               allNumeralsumerals[1164]="MCLXV";	
               allNumeralsumerals[1165]="MCLXVI";	
               allNumeralsumerals[1166]="MCLXVII";	
               allNumeralsumerals[1167]="MCLXVIII";	
               allNumeralsumerals[1168]="MCLXIX";	
               allNumeralsumerals[1169]="MCLXX";	
               allNumeralsumerals[1170]="MCLXXI";	
               allNumeralsumerals[1171]="MCLXXII";	
               allNumeralsumerals[1172]="MCLXXIII";	
               allNumeralsumerals[1173]="MCLXXIV";	
               allNumeralsumerals[1174]="MCLXXV";	
               allNumeralsumerals[1175]="MCLXXVI";	
               allNumeralsumerals[1176]="MCLXXVII";	
               allNumeralsumerals[1177]="MCLXXVIII";	
               allNumeralsumerals[1178]="MCLXXIX";	
               allNumeralsumerals[1179]="MCLXXX";	
               allNumeralsumerals[1180]="MCLXXXI";	
               allNumeralsumerals[1181]="MCLXXXII";	
               allNumeralsumerals[1182]="MCLXXXIII";	
               allNumeralsumerals[1183]="MCLXXXIV";	
               allNumeralsumerals[1184]="MCLXXXV";	
               allNumeralsumerals[1185]="MCLXXXVI";	
               allNumeralsumerals[1186]="MCLXXXVII";	
               allNumeralsumerals[1187]="MCLXXXVIII";	
               allNumeralsumerals[1188]="MCLXXXIX";	
               allNumeralsumerals[1189]="MCXC";	
               allNumeralsumerals[1190]="MCXCI";	
               allNumeralsumerals[1191]="MCXCII";	
               allNumeralsumerals[1192]="MCXCIII";	
               allNumeralsumerals[1193]="MCXCIV";	
               allNumeralsumerals[1194]="MCXCV";	
               allNumeralsumerals[1195]="MCXCVI";	
               allNumeralsumerals[1196]="MCXCVII";	
               allNumeralsumerals[1197]="MCXCVIII";	
               allNumeralsumerals[1198]="MCXCIX";	
               allNumeralsumerals[1199]="MCC";	
               allNumeralsumerals[1200]="MCCI";	
               allNumeralsumerals[1201]="MCCII";	
               allNumeralsumerals[1202]="MCCIII";	
               allNumeralsumerals[1203]="MCCIV";	
               allNumeralsumerals[1204]="MCCV";	
               allNumeralsumerals[1205]="MCCVI";	
               allNumeralsumerals[1206]="MCCVII";	
               allNumeralsumerals[1207]="MCCVIII";	
               allNumeralsumerals[1208]="MCCIX";	
               allNumeralsumerals[1209]="MCCX";	
               allNumeralsumerals[1210]="MCCXI";	
               allNumeralsumerals[1211]="MCCXII";	
               allNumeralsumerals[1212]="MCCXIII";	
               allNumeralsumerals[1213]="MCCXIV";	
               allNumeralsumerals[1214]="MCCXV";	
               allNumeralsumerals[1215]="MCCXVI";	
               allNumeralsumerals[1216]="MCCXVII";	
               allNumeralsumerals[1217]="MCCXVIII";	
               allNumeralsumerals[1218]="MCCXIX";	
               allNumeralsumerals[1219]="MCCXX";	
               allNumeralsumerals[1220]="MCCXXI";	
               allNumeralsumerals[1221]="MCCXXII";	
               allNumeralsumerals[1222]="MCCXXIII";	
               allNumeralsumerals[1223]="MCCXXIV";	
               allNumeralsumerals[1224]="MCCXXV";	
               allNumeralsumerals[1225]="MCCXXVI";	
               allNumeralsumerals[1226]="MCCXXVII";	
               allNumeralsumerals[1227]="MCCXXVIII";	
               allNumeralsumerals[1228]="MCCXXIX";	
               allNumeralsumerals[1229]="MCCXXX";	
               allNumeralsumerals[1230]="MCCXXXI";	
               allNumeralsumerals[1231]="MCCXXXII";	
               allNumeralsumerals[1232]="MCCXXXIII";	
               allNumeralsumerals[1233]="MCCXXXIV";	
               allNumeralsumerals[1234]="MCCXXXV";	
               allNumeralsumerals[1235]="MCCXXXVI";	
               allNumeralsumerals[1236]="MCCXXXVII";	
               allNumeralsumerals[1237]="MCCXXXVIII";	
               allNumeralsumerals[1238]="MCCXXXIX";	
               allNumeralsumerals[1239]="MCCXL";	
               allNumeralsumerals[1240]="MCCXLI";	
               allNumeralsumerals[1241]="MCCXLII";	
               allNumeralsumerals[1242]="MCCXLIII";	
               allNumeralsumerals[1243]="MCCXLIV";	
               allNumeralsumerals[1244]="MCCXLV";	
               allNumeralsumerals[1245]="MCCXLVI";	
               allNumeralsumerals[1246]="MCCXLVII";	
               allNumeralsumerals[1247]="MCCXLVIII";	
               allNumeralsumerals[1248]="MCCXLIX";	
               allNumeralsumerals[1249]="MCCL";	
               allNumeralsumerals[1250]="MCCLI";	
               allNumeralsumerals[1251]="MCCLII";	
               allNumeralsumerals[1252]="MCCLIII";	
               allNumeralsumerals[1253]="MCCLIV";	
               allNumeralsumerals[1254]="MCCLV";	
               allNumeralsumerals[1255]="MCCLVI";	
               allNumeralsumerals[1256]="MCCLVII";	
               allNumeralsumerals[1257]="MCCLVIII";	
               allNumeralsumerals[1258]="MCCLIX";	
               allNumeralsumerals[1259]="MCCLX";	
               allNumeralsumerals[1260]="MCCLXI";	
               allNumeralsumerals[1261]="MCCLXII";	
               allNumeralsumerals[1262]="MCCLXIII";	
               allNumeralsumerals[1263]="MCCLXIV";	
               allNumeralsumerals[1264]="MCCLXV";	
               allNumeralsumerals[1265]="MCCLXVI";	
               allNumeralsumerals[1266]="MCCLXVII";	
               allNumeralsumerals[1267]="MCCLXVIII";	
               allNumeralsumerals[1268]="MCCLXIX";	
               allNumeralsumerals[1269]="MCCLXX";	
               allNumeralsumerals[1270]="MCCLXXI";	
               allNumeralsumerals[1271]="MCCLXXII";	
               allNumeralsumerals[1272]="MCCLXXIII";	
               allNumeralsumerals[1273]="MCCLXXIV";	
               allNumeralsumerals[1274]="MCCLXXV";	
               allNumeralsumerals[1275]="MCCLXXVI";	
               allNumeralsumerals[1276]="MCCLXXVII";	
               allNumeralsumerals[1277]="MCCLXXVIII";	
               allNumeralsumerals[1278]="MCCLXXIX";	
               allNumeralsumerals[1279]="MCCLXXX";	
               allNumeralsumerals[1280]="MCCLXXXI";	
               allNumeralsumerals[1281]="MCCLXXXII";	
               allNumeralsumerals[1282]="MCCLXXXIII";	
               allNumeralsumerals[1283]="MCCLXXXIV";	
               allNumeralsumerals[1284]="MCCLXXXV";	
               allNumeralsumerals[1285]="MCCLXXXVI";	
               allNumeralsumerals[1286]="MCCLXXXVII";	
               allNumeralsumerals[1287]="MCCLXXXVIII";	
               allNumeralsumerals[1288]="MCCLXXXIX";	
               allNumeralsumerals[1289]="MCCXC";	
               allNumeralsumerals[1290]="MCCXCI";	
               allNumeralsumerals[1291]="MCCXCII";	
               allNumeralsumerals[1292]="MCCXCIII";	
               allNumeralsumerals[1293]="MCCXCIV";	
               allNumeralsumerals[1294]="MCCXCV";	
               allNumeralsumerals[1295]="MCCXCVI";	
               allNumeralsumerals[1296]="MCCXCVII";	
               allNumeralsumerals[1297]="MCCXCVIII";	
               allNumeralsumerals[1298]="MCCXCIX";	
               allNumeralsumerals[1299]="MCCC";	
               allNumeralsumerals[1300]="MCCCI";	
               allNumeralsumerals[1301]="MCCCII";	
               allNumeralsumerals[1302]="MCCCIII";	
               allNumeralsumerals[1303]="MCCCIV";	
               allNumeralsumerals[1304]="MCCCV";	
               allNumeralsumerals[1305]="MCCCVI";	
               allNumeralsumerals[1306]="MCCCVII";	
               allNumeralsumerals[1307]="MCCCVIII";	
               allNumeralsumerals[1308]="MCCCIX";	
               allNumeralsumerals[1309]="MCCCX";	
               allNumeralsumerals[1310]="MCCCXI";	
               allNumeralsumerals[1311]="MCCCXII";	
               allNumeralsumerals[1312]="MCCCXIII";	
               allNumeralsumerals[1313]="MCCCXIV";	
               allNumeralsumerals[1314]="MCCCXV";	
               allNumeralsumerals[1315]="MCCCXVI";	
               allNumeralsumerals[1316]="MCCCXVII";	
               allNumeralsumerals[1317]="MCCCXVIII";	
               allNumeralsumerals[1318]="MCCCXIX";	
               allNumeralsumerals[1319]="MCCCXX";	
               allNumeralsumerals[1320]="MCCCXXI";	
               allNumeralsumerals[1321]="MCCCXXII";	
               allNumeralsumerals[1322]="MCCCXXIII";	
               allNumeralsumerals[1323]="MCCCXXIV";	
               allNumeralsumerals[1324]="MCCCXXV";	
               allNumeralsumerals[1325]="MCCCXXVI";	
               allNumeralsumerals[1326]="MCCCXXVII";	
               allNumeralsumerals[1327]="MCCCXXVIII";	
               allNumeralsumerals[1328]="MCCCXXIX";	
               allNumeralsumerals[1329]="MCCCXXX";	
               allNumeralsumerals[1330]="MCCCXXXI";	
               allNumeralsumerals[1331]="MCCCXXXII";	
               allNumeralsumerals[1332]="MCCCXXXIII";	
               allNumeralsumerals[1333]="MCCCXXXIV";	
               allNumeralsumerals[1334]="MCCCXXXV";	
               allNumeralsumerals[1335]="MCCCXXXVI";	
               allNumeralsumerals[1336]="MCCCXXXVII";	
               allNumeralsumerals[1337]="MCCCXXXVIII";	
               allNumeralsumerals[1338]="MCCCXXXIX";	
               allNumeralsumerals[1339]="MCCCXL";	
               allNumeralsumerals[1340]="MCCCXLI";	
               allNumeralsumerals[1341]="MCCCXLII";	
               allNumeralsumerals[1342]="MCCCXLIII";	
               allNumeralsumerals[1343]="MCCCXLIV";	
               allNumeralsumerals[1344]="MCCCXLV";	
               allNumeralsumerals[1345]="MCCCXLVI";	
               allNumeralsumerals[1346]="MCCCXLVII";	
               allNumeralsumerals[1347]="MCCCXLVIII";	
               allNumeralsumerals[1348]="MCCCXLIX";	
               allNumeralsumerals[1349]="MCCCL";	
               allNumeralsumerals[1350]="MCCCLI";	
               allNumeralsumerals[1351]="MCCCLII";	
               allNumeralsumerals[1352]="MCCCLIII";	
               allNumeralsumerals[1353]="MCCCLIV";	
               allNumeralsumerals[1354]="MCCCLV";	
               allNumeralsumerals[1355]="MCCCLVI";	
               allNumeralsumerals[1356]="MCCCLVII";	
               allNumeralsumerals[1357]="MCCCLVIII";	
               allNumeralsumerals[1358]="MCCCLIX";	
               allNumeralsumerals[1359]="MCCCLX";	
               allNumeralsumerals[1360]="MCCCLXI";	
               allNumeralsumerals[1361]="MCCCLXII";	
               allNumeralsumerals[1362]="MCCCLXIII";	
               allNumeralsumerals[1363]="MCCCLXIV";	
               allNumeralsumerals[1364]="MCCCLXV";	
               allNumeralsumerals[1365]="MCCCLXVI";	
               allNumeralsumerals[1366]="MCCCLXVII";	
               allNumeralsumerals[1367]="MCCCLXVIII";	
               allNumeralsumerals[1368]="MCCCLXIX";	
               allNumeralsumerals[1369]="MCCCLXX";	
               allNumeralsumerals[1370]="MCCCLXXI";	
               allNumeralsumerals[1371]="MCCCLXXII";	
               allNumeralsumerals[1372]="MCCCLXXIII";	
               allNumeralsumerals[1373]="MCCCLXXIV";	
               allNumeralsumerals[1374]="MCCCLXXV";	
               allNumeralsumerals[1375]="MCCCLXXVI";	
               allNumeralsumerals[1376]="MCCCLXXVII";	
               allNumeralsumerals[1377]="MCCCLXXVIII";	
               allNumeralsumerals[1378]="MCCCLXXIX";	
               allNumeralsumerals[1379]="MCCCLXXX";	
               allNumeralsumerals[1380]="MCCCLXXXI";	
               allNumeralsumerals[1381]="MCCCLXXXII";	
               allNumeralsumerals[1382]="MCCCLXXXIII";	
               allNumeralsumerals[1383]="MCCCLXXXIV";	
               allNumeralsumerals[1384]="MCCCLXXXV";	
               allNumeralsumerals[1385]="MCCCLXXXVI";	
               allNumeralsumerals[1386]="MCCCLXXXVII";	
               allNumeralsumerals[1387]="MCCCLXXXVIII";	
               allNumeralsumerals[1388]="MCCCLXXXIX";	
               allNumeralsumerals[1389]="MCCCXC";	
               allNumeralsumerals[1390]="MCCCXCI";	
               allNumeralsumerals[1391]="MCCCXCII";	
               allNumeralsumerals[1392]="MCCCXCIII";	
               allNumeralsumerals[1393]="MCCCXCIV";	
               allNumeralsumerals[1394]="MCCCXCV";	
               allNumeralsumerals[1395]="MCCCXCVI";	
               allNumeralsumerals[1396]="MCCCXCVII";	
               allNumeralsumerals[1397]="MCCCXCVIII";	
               allNumeralsumerals[1398]="MCCCXCIX";	
               allNumeralsumerals[1399]="MCD";	
               allNumeralsumerals[1400]="MCDI";	
               allNumeralsumerals[1401]="MCDII";	
               allNumeralsumerals[1402]="MCDIII";	
               allNumeralsumerals[1403]="MCDIV";	
               allNumeralsumerals[1404]="MCDV";	
               allNumeralsumerals[1405]="MCDVI";	
               allNumeralsumerals[1406]="MCDVII";	
               allNumeralsumerals[1407]="MCDVIII";	
               allNumeralsumerals[1408]="MCDIX";	
               allNumeralsumerals[1409]="MCDX";	
               allNumeralsumerals[1410]="MCDXI";	
               allNumeralsumerals[1411]="MCDXII";	
               allNumeralsumerals[1412]="MCDXIII";	
               allNumeralsumerals[1413]="MCDXIV";	
               allNumeralsumerals[1414]="MCDXV";	
               allNumeralsumerals[1415]="MCDXVI";	
               allNumeralsumerals[1416]="MCDXVII";	
               allNumeralsumerals[1417]="MCDXVIII";	
               allNumeralsumerals[1418]="MCDXIX";	
               allNumeralsumerals[1419]="MCDXX";	
               allNumeralsumerals[1420]="MCDXXI";	
               allNumeralsumerals[1421]="MCDXXII";	
               allNumeralsumerals[1422]="MCDXXIII";	
               allNumeralsumerals[1423]="MCDXXIV";	
               allNumeralsumerals[1424]="MCDXXV";	
               allNumeralsumerals[1425]="MCDXXVI";	
               allNumeralsumerals[1426]="MCDXXVII";	
               allNumeralsumerals[1427]="MCDXXVIII";	
               allNumeralsumerals[1428]="MCDXXIX";	
               allNumeralsumerals[1429]="MCDXXX";	
               allNumeralsumerals[1430]="MCDXXXI";	
               allNumeralsumerals[1431]="MCDXXXII";	
               allNumeralsumerals[1432]="MCDXXXIII";	
               allNumeralsumerals[1433]="MCDXXXIV";	
               allNumeralsumerals[1434]="MCDXXXV";	
               allNumeralsumerals[1435]="MCDXXXVI";	
               allNumeralsumerals[1436]="MCDXXXVII";	
               allNumeralsumerals[1437]="MCDXXXVIII";	
               allNumeralsumerals[1438]="MCDXXXIX";	
               allNumeralsumerals[1439]="MCDXL";	
               allNumeralsumerals[1440]="MCDXLI";	
               allNumeralsumerals[1441]="MCDXLII";	
               allNumeralsumerals[1442]="MCDXLIII";	
               allNumeralsumerals[1443]="MCDXLIV";	
               allNumeralsumerals[1444]="MCDXLV";	
               allNumeralsumerals[1445]="MCDXLVI";	
               allNumeralsumerals[1446]="MCDXLVII";	
               allNumeralsumerals[1447]="MCDXLVIII";	
               allNumeralsumerals[1448]="MCDXLIX";	
               allNumeralsumerals[1449]="MCDL";	
               allNumeralsumerals[1450]="MCDLI";	
               allNumeralsumerals[1451]="MCDLII";	
               allNumeralsumerals[1452]="MCDLIII";	
               allNumeralsumerals[1453]="MCDLIV";	
               allNumeralsumerals[1454]="MCDLV";	
               allNumeralsumerals[1455]="MCDLVI";	
               allNumeralsumerals[1456]="MCDLVII";	
               allNumeralsumerals[1457]="MCDLVIII";	
               allNumeralsumerals[1458]="MCDLIX";	
               allNumeralsumerals[1459]="MCDLX";	
               allNumeralsumerals[1460]="MCDLXI";	
               allNumeralsumerals[1461]="MCDLXII";	
               allNumeralsumerals[1462]="MCDLXIII";	
               allNumeralsumerals[1463]="MCDLXIV";	
               allNumeralsumerals[1464]="MCDLXV";	
               allNumeralsumerals[1465]="MCDLXVI";	
               allNumeralsumerals[1466]="MCDLXVII";	
               allNumeralsumerals[1467]="MCDLXVIII";	
               allNumeralsumerals[1468]="MCDLXIX";	
               allNumeralsumerals[1469]="MCDLXX";	
               allNumeralsumerals[1470]="MCDLXXI";	
               allNumeralsumerals[1471]="MCDLXXII";	
               allNumeralsumerals[1472]="MCDLXXIII";	
               allNumeralsumerals[1473]="MCDLXXIV";	
               allNumeralsumerals[1474]="MCDLXXV";	
               allNumeralsumerals[1475]="MCDLXXVI";	
               allNumeralsumerals[1476]="MCDLXXVII";	
               allNumeralsumerals[1477]="MCDLXXVIII";	
               allNumeralsumerals[1478]="MCDLXXIX";	
               allNumeralsumerals[1479]="MCDLXXX";	
               allNumeralsumerals[1480]="MCDLXXXI";	
               allNumeralsumerals[1481]="MCDLXXXII";	
               allNumeralsumerals[1482]="MCDLXXXIII";	
               allNumeralsumerals[1483]="MCDLXXXIV";	
               allNumeralsumerals[1484]="MCDLXXXV";	
               allNumeralsumerals[1485]="MCDLXXXVI";	
               allNumeralsumerals[1486]="MCDLXXXVII";	
               allNumeralsumerals[1487]="MCDLXXXVIII";	
               allNumeralsumerals[1488]="MCDLXXXIX";	
               allNumeralsumerals[1489]="MCDXC";	
               allNumeralsumerals[1490]="MCDXCI";	
               allNumeralsumerals[1491]="MCDXCII";	
               allNumeralsumerals[1492]="MCDXCIII";	
               allNumeralsumerals[1493]="MCDXCIV";	
               allNumeralsumerals[1494]="MCDXCV";	
               allNumeralsumerals[1495]="MCDXCVI";	
               allNumeralsumerals[1496]="MCDXCVII";	
               allNumeralsumerals[1497]="MCDXCVIII";	
               allNumeralsumerals[1498]="MCDXCIX";	
               allNumeralsumerals[1499]="MD";	
               allNumeralsumerals[1500]="MDI";	
               allNumeralsumerals[1501]="MDII";	
               allNumeralsumerals[1502]="MDIII";	
               allNumeralsumerals[1503]="MDIV";	
               allNumeralsumerals[1504]="MDV";	
               allNumeralsumerals[1505]="MDVI";	
               allNumeralsumerals[1506]="MDVII";	
               allNumeralsumerals[1507]="MDVIII";	
               allNumeralsumerals[1508]="MDIX";	
               allNumeralsumerals[1509]="MDX";	
               allNumeralsumerals[1510]="MDXI";	
               allNumeralsumerals[1511]="MDXII";	
               allNumeralsumerals[1512]="MDXIII";	
               allNumeralsumerals[1513]="MDXIV";	
               allNumeralsumerals[1514]="MDXV";	
               allNumeralsumerals[1515]="MDXVI";	
               allNumeralsumerals[1516]="MDXVII";	
               allNumeralsumerals[1517]="MDXVIII";	
               allNumeralsumerals[1518]="MDXIX";	
               allNumeralsumerals[1519]="MDXX";	
               allNumeralsumerals[1520]="MDXXI";	
               allNumeralsumerals[1521]="MDXXII";	
               allNumeralsumerals[1522]="MDXXIII";	
               allNumeralsumerals[1523]="MDXXIV";	
               allNumeralsumerals[1524]="MDXXV";	
               allNumeralsumerals[1525]="MDXXVI";	
               allNumeralsumerals[1526]="MDXXVII";	
               allNumeralsumerals[1527]="MDXXVIII";	
               allNumeralsumerals[1528]="MDXXIX";	
               allNumeralsumerals[1529]="MDXXX";	
               allNumeralsumerals[1530]="MDXXXI";	
               allNumeralsumerals[1531]="MDXXXII";	
               allNumeralsumerals[1532]="MDXXXIII";	
               allNumeralsumerals[1533]="MDXXXIV";	
               allNumeralsumerals[1534]="MDXXXV";	
               allNumeralsumerals[1535]="MDXXXVI";	
               allNumeralsumerals[1536]="MDXXXVII";	
               allNumeralsumerals[1537]="MDXXXVIII";	
               allNumeralsumerals[1538]="MDXXXIX";	
               allNumeralsumerals[1539]="MDXL";	
               allNumeralsumerals[1540]="MDXLI";	
               allNumeralsumerals[1541]="MDXLII";	
               allNumeralsumerals[1542]="MDXLIII";	
               allNumeralsumerals[1543]="MDXLIV";	
               allNumeralsumerals[1544]="MDXLV";	
               allNumeralsumerals[1545]="MDXLVI";	
               allNumeralsumerals[1546]="MDXLVII";	
               allNumeralsumerals[1547]="MDXLVIII";	
               allNumeralsumerals[1548]="MDXLIX";	
               allNumeralsumerals[1549]="MDL";	
               allNumeralsumerals[1550]="MDLI";	
               allNumeralsumerals[1551]="MDLII";	
               allNumeralsumerals[1552]="MDLIII";	
               allNumeralsumerals[1553]="MDLIV";	
               allNumeralsumerals[1554]="MDLV";	
               allNumeralsumerals[1555]="MDLVI";	
               allNumeralsumerals[1556]="MDLVII";	
               allNumeralsumerals[1557]="MDLVIII";	
               allNumeralsumerals[1558]="MDLIX";	
               allNumeralsumerals[1559]="MDLX";	
               allNumeralsumerals[1560]="MDLXI";	
               allNumeralsumerals[1561]="MDLXII";	
               allNumeralsumerals[1562]="MDLXIII";	
               allNumeralsumerals[1563]="MDLXIV";	
               allNumeralsumerals[1564]="MDLXV";	
               allNumeralsumerals[1565]="MDLXVI";	
               allNumeralsumerals[1566]="MDLXVII";	
               allNumeralsumerals[1567]="MDLXVIII";	
               allNumeralsumerals[1568]="MDLXIX";	
               allNumeralsumerals[1569]="MDLXX";	
               allNumeralsumerals[1570]="MDLXXI";	
               allNumeralsumerals[1571]="MDLXXII";	
               allNumeralsumerals[1572]="MDLXXIII";	
               allNumeralsumerals[1573]="MDLXXIV";	
               allNumeralsumerals[1574]="MDLXXV";	
               allNumeralsumerals[1575]="MDLXXVI";	
               allNumeralsumerals[1576]="MDLXXVII";	
               allNumeralsumerals[1577]="MDLXXVIII";	
               allNumeralsumerals[1578]="MDLXXIX";	
               allNumeralsumerals[1579]="MDLXXX";	
               allNumeralsumerals[1580]="MDLXXXI";	
               allNumeralsumerals[1581]="MDLXXXII";	
               allNumeralsumerals[1582]="MDLXXXIII";	
               allNumeralsumerals[1583]="MDLXXXIV";	
               allNumeralsumerals[1584]="MDLXXXV";	
               allNumeralsumerals[1585]="MDLXXXVI";	
               allNumeralsumerals[1586]="MDLXXXVII";	
               allNumeralsumerals[1587]="MDLXXXVIII";	
               allNumeralsumerals[1588]="MDLXXXIX";	
               allNumeralsumerals[1589]="MDXC";	
               allNumeralsumerals[1590]="MDXCI";	
               allNumeralsumerals[1591]="MDXCII";	
               allNumeralsumerals[1592]="MDXCIII";	
               allNumeralsumerals[1593]="MDXCIV";	
               allNumeralsumerals[1594]="MDXCV";	
               allNumeralsumerals[1595]="MDXCVI";	
               allNumeralsumerals[1596]="MDXCVII";	
               allNumeralsumerals[1597]="MDXCVIII";	
               allNumeralsumerals[1598]="MDXCIX";	
               allNumeralsumerals[1599]="MDC";	
               allNumeralsumerals[1600]="MDCI";	
               allNumeralsumerals[1601]="MDCII";	
               allNumeralsumerals[1602]="MDCIII";	
               allNumeralsumerals[1603]="MDCIV";	
               allNumeralsumerals[1604]="MDCV";	
               allNumeralsumerals[1605]="MDCVI";	
               allNumeralsumerals[1606]="MDCVII";	
               allNumeralsumerals[1607]="MDCVIII";	
               allNumeralsumerals[1608]="MDCIX";	
               allNumeralsumerals[1609]="MDCX";	
               allNumeralsumerals[1610]="MDCXI";	
               allNumeralsumerals[1611]="MDCXII";	
               allNumeralsumerals[1612]="MDCXIII";	
               allNumeralsumerals[1613]="MDCXIV";	
               allNumeralsumerals[1614]="MDCXV";	
               allNumeralsumerals[1615]="MDCXVI";	
               allNumeralsumerals[1616]="MDCXVII";	
               allNumeralsumerals[1617]="MDCXVIII";	
               allNumeralsumerals[1618]="MDCXIX";	
               allNumeralsumerals[1619]="MDCXX";	
               allNumeralsumerals[1620]="MDCXXI";	
               allNumeralsumerals[1621]="MDCXXII";	
               allNumeralsumerals[1622]="MDCXXIII";	
               allNumeralsumerals[1623]="MDCXXIV";	
               allNumeralsumerals[1624]="MDCXXV";	
               allNumeralsumerals[1625]="MDCXXVI";	
               allNumeralsumerals[1626]="MDCXXVII";	
               allNumeralsumerals[1627]="MDCXXVIII";	
               allNumeralsumerals[1628]="MDCXXIX";	
               allNumeralsumerals[1629]="MDCXXX";	
               allNumeralsumerals[1630]="MDCXXXI";	
               allNumeralsumerals[1631]="MDCXXXII";	
               allNumeralsumerals[1632]="MDCXXXIII";	
               allNumeralsumerals[1633]="MDCXXXIV";	
               allNumeralsumerals[1634]="MDCXXXV";	
               allNumeralsumerals[1635]="MDCXXXVI";	
               allNumeralsumerals[1636]="MDCXXXVII";	
               allNumeralsumerals[1637]="MDCXXXVIII";	
               allNumeralsumerals[1638]="MDCXXXIX";	
               allNumeralsumerals[1639]="MDCXL";	
               allNumeralsumerals[1640]="MDCXLI";	
               allNumeralsumerals[1641]="MDCXLII";	
               allNumeralsumerals[1642]="MDCXLIII";	
               allNumeralsumerals[1643]="MDCXLIV";	
               allNumeralsumerals[1644]="MDCXLV";	
               allNumeralsumerals[1645]="MDCXLVI";	
               allNumeralsumerals[1646]="MDCXLVII";	
               allNumeralsumerals[1647]="MDCXLVIII";	
               allNumeralsumerals[1648]="MDCXLIX";	
               allNumeralsumerals[1649]="MDCL";	
               allNumeralsumerals[1650]="MDCLI";	
               allNumeralsumerals[1651]="MDCLII";	
               allNumeralsumerals[1652]="MDCLIII";	
               allNumeralsumerals[1653]="MDCLIV";	
               allNumeralsumerals[1654]="MDCLV";	
               allNumeralsumerals[1655]="MDCLVI";	
               allNumeralsumerals[1656]="MDCLVII";	
               allNumeralsumerals[1657]="MDCLVIII";	
               allNumeralsumerals[1658]="MDCLIX";	
               allNumeralsumerals[1659]="MDCLX";	
               allNumeralsumerals[1660]="MDCLXI";	
               allNumeralsumerals[1661]="MDCLXII";	
               allNumeralsumerals[1662]="MDCLXIII";	
               allNumeralsumerals[1663]="MDCLXIV";	
               allNumeralsumerals[1664]="MDCLXV";	
               allNumeralsumerals[1665]="MDCLXVI";	
               allNumeralsumerals[1666]="MDCLXVII";	
               allNumeralsumerals[1667]="MDCLXVIII";	
               allNumeralsumerals[1668]="MDCLXIX";	
               allNumeralsumerals[1669]="MDCLXX";	
               allNumeralsumerals[1670]="MDCLXXI";	
               allNumeralsumerals[1671]="MDCLXXII";	
               allNumeralsumerals[1672]="MDCLXXIII";	
               allNumeralsumerals[1673]="MDCLXXIV";	
               allNumeralsumerals[1674]="MDCLXXV";	
               allNumeralsumerals[1675]="MDCLXXVI";	
               allNumeralsumerals[1676]="MDCLXXVII";	
               allNumeralsumerals[1677]="MDCLXXVIII";	
               allNumeralsumerals[1678]="MDCLXXIX";	
               allNumeralsumerals[1679]="MDCLXXX";	
               allNumeralsumerals[1680]="MDCLXXXI";	
               allNumeralsumerals[1681]="MDCLXXXII";	
               allNumeralsumerals[1682]="MDCLXXXIII";	
               allNumeralsumerals[1683]="MDCLXXXIV";	
               allNumeralsumerals[1684]="MDCLXXXV";	
               allNumeralsumerals[1685]="MDCLXXXVI";	
               allNumeralsumerals[1686]="MDCLXXXVII";	
               allNumeralsumerals[1687]="MDCLXXXVIII";	
               allNumeralsumerals[1688]="MDCLXXXIX";	
               allNumeralsumerals[1689]="MDCXC";	
               allNumeralsumerals[1690]="MDCXCI";	
               allNumeralsumerals[1691]="MDCXCII";	
               allNumeralsumerals[1692]="MDCXCIII";	
               allNumeralsumerals[1693]="MDCXCIV";	
               allNumeralsumerals[1694]="MDCXCV";	
               allNumeralsumerals[1695]="MDCXCVI";	
               allNumeralsumerals[1696]="MDCXCVII";	
               allNumeralsumerals[1697]="MDCXCVIII";	
               allNumeralsumerals[1698]="MDCXCIX";	
               allNumeralsumerals[1699]="MDCC";	
               allNumeralsumerals[1700]="MDCCI";	
               allNumeralsumerals[1701]="MDCCII";	
               allNumeralsumerals[1702]="MDCCIII";	
               allNumeralsumerals[1703]="MDCCIV";	
               allNumeralsumerals[1704]="MDCCV";	
               allNumeralsumerals[1705]="MDCCVI";	
               allNumeralsumerals[1706]="MDCCVII";	
               allNumeralsumerals[1707]="MDCCVIII";	
               allNumeralsumerals[1708]="MDCCIX";	
               allNumeralsumerals[1709]="MDCCX";	
               allNumeralsumerals[1710]="MDCCXI";	
               allNumeralsumerals[1711]="MDCCXII";	
               allNumeralsumerals[1712]="MDCCXIII";	
               allNumeralsumerals[1713]="MDCCXIV";	
               allNumeralsumerals[1714]="MDCCXV";	
               allNumeralsumerals[1715]="MDCCXVI";	
               allNumeralsumerals[1716]="MDCCXVII";	
               allNumeralsumerals[1717]="MDCCXVIII";	
               allNumeralsumerals[1718]="MDCCXIX";	
               allNumeralsumerals[1719]="MDCCXX";	
               allNumeralsumerals[1720]="MDCCXXI";	
               allNumeralsumerals[1721]="MDCCXXII";	
               allNumeralsumerals[1722]="MDCCXXIII";	
               allNumeralsumerals[1723]="MDCCXXIV";	
               allNumeralsumerals[1724]="MDCCXXV";	
               allNumeralsumerals[1725]="MDCCXXVI";	
               allNumeralsumerals[1726]="MDCCXXVII";	
               allNumeralsumerals[1727]="MDCCXXVIII";	
               allNumeralsumerals[1728]="MDCCXXIX";	
               allNumeralsumerals[1729]="MDCCXXX";	
               allNumeralsumerals[1730]="MDCCXXXI";	
               allNumeralsumerals[1731]="MDCCXXXII";	
               allNumeralsumerals[1732]="MDCCXXXIII";	
               allNumeralsumerals[1733]="MDCCXXXIV";	
               allNumeralsumerals[1734]="MDCCXXXV";	
               allNumeralsumerals[1735]="MDCCXXXVI";	
               allNumeralsumerals[1736]="MDCCXXXVII";	
               allNumeralsumerals[1737]="MDCCXXXVIII";	
               allNumeralsumerals[1738]="MDCCXXXIX";	
               allNumeralsumerals[1739]="MDCCXL";	
               allNumeralsumerals[1740]="MDCCXLI";	
               allNumeralsumerals[1741]="MDCCXLII";	
               allNumeralsumerals[1742]="MDCCXLIII";	
               allNumeralsumerals[1743]="MDCCXLIV";	
               allNumeralsumerals[1744]="MDCCXLV";	
               allNumeralsumerals[1745]="MDCCXLVI";	
               allNumeralsumerals[1746]="MDCCXLVII";	
               allNumeralsumerals[1747]="MDCCXLVIII";	
               allNumeralsumerals[1748]="MDCCXLIX";	
               allNumeralsumerals[1749]="MDCCL";	
               allNumeralsumerals[1750]="MDCCLI";	
               allNumeralsumerals[1751]="MDCCLII";	
               allNumeralsumerals[1752]="MDCCLIII";	
               allNumeralsumerals[1753]="MDCCLIV";	
               allNumeralsumerals[1754]="MDCCLV";	
               allNumeralsumerals[1755]="MDCCLVI";	
               allNumeralsumerals[1756]="MDCCLVII";	
               allNumeralsumerals[1757]="MDCCLVIII";	
               allNumeralsumerals[1758]="MDCCLIX";	
               allNumeralsumerals[1759]="MDCCLX";	
               allNumeralsumerals[1760]="MDCCLXI";	
               allNumeralsumerals[1761]="MDCCLXII";	
               allNumeralsumerals[1762]="MDCCLXIII";	
               allNumeralsumerals[1763]="MDCCLXIV";	
               allNumeralsumerals[1764]="MDCCLXV";	
               allNumeralsumerals[1765]="MDCCLXVI";	
               allNumeralsumerals[1766]="MDCCLXVII";	
               allNumeralsumerals[1767]="MDCCLXVIII";	
               allNumeralsumerals[1768]="MDCCLXIX";	
               allNumeralsumerals[1769]="MDCCLXX";	
               allNumeralsumerals[1770]="MDCCLXXI";	
               allNumeralsumerals[1771]="MDCCLXXII";	
               allNumeralsumerals[1772]="MDCCLXXIII";	
               allNumeralsumerals[1773]="MDCCLXXIV";	
               allNumeralsumerals[1774]="MDCCLXXV";	
               allNumeralsumerals[1775]="MDCCLXXVI";	
               allNumeralsumerals[1776]="MDCCLXXVII";	
               allNumeralsumerals[1777]="MDCCLXXVIII";	
               allNumeralsumerals[1778]="MDCCLXXIX";	
               allNumeralsumerals[1779]="MDCCLXXX";	
               allNumeralsumerals[1780]="MDCCLXXXI";	
               allNumeralsumerals[1781]="MDCCLXXXII";	
               allNumeralsumerals[1782]="MDCCLXXXIII";	
               allNumeralsumerals[1783]="MDCCLXXXIV";	
               allNumeralsumerals[1784]="MDCCLXXXV";	
               allNumeralsumerals[1785]="MDCCLXXXVI";	
               allNumeralsumerals[1786]="MDCCLXXXVII";	
               allNumeralsumerals[1787]="MDCCLXXXVIII";	
               allNumeralsumerals[1788]="MDCCLXXXIX";	
               allNumeralsumerals[1789]="MDCCXC";	
               allNumeralsumerals[1790]="MDCCXCI";	
               allNumeralsumerals[1791]="MDCCXCII";	
               allNumeralsumerals[1792]="MDCCXCIII";	
               allNumeralsumerals[1793]="MDCCXCIV";	
               allNumeralsumerals[1794]="MDCCXCV";	
               allNumeralsumerals[1795]="MDCCXCVI";	
               allNumeralsumerals[1796]="MDCCXCVII";	
               allNumeralsumerals[1797]="MDCCXCVIII";	
               allNumeralsumerals[1798]="MDCCXCIX";	
               allNumeralsumerals[1799]="MDCCC";	
               allNumeralsumerals[1800]="MDCCCI";	
               allNumeralsumerals[1801]="MDCCCII";	
               allNumeralsumerals[1802]="MDCCCIII";	
               allNumeralsumerals[1803]="MDCCCIV";	
               allNumeralsumerals[1804]="MDCCCV";	
               allNumeralsumerals[1805]="MDCCCVI";	
               allNumeralsumerals[1806]="MDCCCVII";	
               allNumeralsumerals[1807]="MDCCCVIII";	
               allNumeralsumerals[1808]="MDCCCIX";	
               allNumeralsumerals[1809]="MDCCCX";	
               allNumeralsumerals[1810]="MDCCCXI";	
               allNumeralsumerals[1811]="MDCCCXII";	
               allNumeralsumerals[1812]="MDCCCXIII";	
               allNumeralsumerals[1813]="MDCCCXIV";	
               allNumeralsumerals[1814]="MDCCCXV";	
               allNumeralsumerals[1815]="MDCCCXVI";	
               allNumeralsumerals[1816]="MDCCCXVII";	
               allNumeralsumerals[1817]="MDCCCXVIII";	
               allNumeralsumerals[1818]="MDCCCXIX";	
               allNumeralsumerals[1819]="MDCCCXX";	
               allNumeralsumerals[1820]="MDCCCXXI";	
               allNumeralsumerals[1821]="MDCCCXXII";	
               allNumeralsumerals[1822]="MDCCCXXIII";	
               allNumeralsumerals[1823]="MDCCCXXIV";	
               allNumeralsumerals[1824]="MDCCCXXV";	
               allNumeralsumerals[1825]="MDCCCXXVI";	
               allNumeralsumerals[1826]="MDCCCXXVII";	
               allNumeralsumerals[1827]="MDCCCXXVIII";	
               allNumeralsumerals[1828]="MDCCCXXIX";	
               allNumeralsumerals[1829]="MDCCCXXX";	
               allNumeralsumerals[1830]="MDCCCXXXI";	
               allNumeralsumerals[1831]="MDCCCXXXII";	
               allNumeralsumerals[1832]="MDCCCXXXIII";	
               allNumeralsumerals[1833]="MDCCCXXXIV";	
               allNumeralsumerals[1834]="MDCCCXXXV";	
               allNumeralsumerals[1835]="MDCCCXXXVI";	
               allNumeralsumerals[1836]="MDCCCXXXVII";	
               allNumeralsumerals[1837]="MDCCCXXXVIII";	
               allNumeralsumerals[1838]="MDCCCXXXIX";	
               allNumeralsumerals[1839]="MDCCCXL";	
               allNumeralsumerals[1840]="MDCCCXLI";	
               allNumeralsumerals[1841]="MDCCCXLII";	
               allNumeralsumerals[1842]="MDCCCXLIII";	
               allNumeralsumerals[1843]="MDCCCXLIV";	
               allNumeralsumerals[1844]="MDCCCXLV";	
               allNumeralsumerals[1845]="MDCCCXLVI";	
               allNumeralsumerals[1846]="MDCCCXLVII";	
               allNumeralsumerals[1847]="MDCCCXLVIII";	
               allNumeralsumerals[1848]="MDCCCXLIX";	
               allNumeralsumerals[1849]="MDCCCL";	
               allNumeralsumerals[1850]="MDCCCLI";	
               allNumeralsumerals[1851]="MDCCCLII";	
               allNumeralsumerals[1852]="MDCCCLIII";	
               allNumeralsumerals[1853]="MDCCCLIV";	
               allNumeralsumerals[1854]="MDCCCLV";	
               allNumeralsumerals[1855]="MDCCCLVI";	
               allNumeralsumerals[1856]="MDCCCLVII";	
               allNumeralsumerals[1857]="MDCCCLVIII";	
               allNumeralsumerals[1858]="MDCCCLIX";	
               allNumeralsumerals[1859]="MDCCCLX";	
               allNumeralsumerals[1860]="MDCCCLXI";	
               allNumeralsumerals[1861]="MDCCCLXII";	
               allNumeralsumerals[1862]="MDCCCLXIII";	
               allNumeralsumerals[1863]="MDCCCLXIV";	
               allNumeralsumerals[1864]="MDCCCLXV";	
               allNumeralsumerals[1865]="MDCCCLXVI";	
               allNumeralsumerals[1866]="MDCCCLXVII";	
               allNumeralsumerals[1867]="MDCCCLXVIII";	
               allNumeralsumerals[1868]="MDCCCLXIX";	
               allNumeralsumerals[1869]="MDCCCLXX";	
               allNumeralsumerals[1870]="MDCCCLXXI";	
               allNumeralsumerals[1871]="MDCCCLXXII";	
               allNumeralsumerals[1872]="MDCCCLXXIII";	
               allNumeralsumerals[1873]="MDCCCLXXIV";	
               allNumeralsumerals[1874]="MDCCCLXXV";	
               allNumeralsumerals[1875]="MDCCCLXXVI";	
               allNumeralsumerals[1876]="MDCCCLXXVII";	
               allNumeralsumerals[1877]="MDCCCLXXVIII";	
               allNumeralsumerals[1878]="MDCCCLXXIX";	
               allNumeralsumerals[1879]="MDCCCLXXX";	
               allNumeralsumerals[1880]="MDCCCLXXXI";	
               allNumeralsumerals[1881]="MDCCCLXXXII";	
               allNumeralsumerals[1882]="MDCCCLXXXIII";	
               allNumeralsumerals[1883]="MDCCCLXXXIV";	
               allNumeralsumerals[1884]="MDCCCLXXXV";	
               allNumeralsumerals[1885]="MDCCCLXXXVI";	
               allNumeralsumerals[1886]="MDCCCLXXXVII";	
               allNumeralsumerals[1887]="MDCCCLXXXVIII";	
               allNumeralsumerals[1888]="MDCCCLXXXIX";	
               allNumeralsumerals[1889]="MDCCCXC";	
               allNumeralsumerals[1890]="MDCCCXCI";	
               allNumeralsumerals[1891]="MDCCCXCII";	
               allNumeralsumerals[1892]="MDCCCXCIII";	
               allNumeralsumerals[1893]="MDCCCXCIV";	
               allNumeralsumerals[1894]="MDCCCXCV";	
               allNumeralsumerals[1895]="MDCCCXCVI";	
               allNumeralsumerals[1896]="MDCCCXCVII";	
               allNumeralsumerals[1897]="MDCCCXCVIII";	
               allNumeralsumerals[1898]="MDCCCXCIX";	
               allNumeralsumerals[1899]="MCM";	
               allNumeralsumerals[1900]="MCMI";	
               allNumeralsumerals[1901]="MCMII";	
               allNumeralsumerals[1902]="MCMIII";	
               allNumeralsumerals[1903]="MCMIV";	
               allNumeralsumerals[1904]="MCMV";	
               allNumeralsumerals[1905]="MCMVI";	
               allNumeralsumerals[1906]="MCMVII";	
               allNumeralsumerals[1907]="MCMVIII";	
               allNumeralsumerals[1908]="MCMIX";	
               allNumeralsumerals[1909]="MCMX";	
               allNumeralsumerals[1910]="MCMXI";	
               allNumeralsumerals[1911]="MCMXII";	
               allNumeralsumerals[1912]="MCMXIII";	
               allNumeralsumerals[1913]="MCMXIV";	
               allNumeralsumerals[1914]="MCMXV";	
               allNumeralsumerals[1915]="MCMXVI";	
               allNumeralsumerals[1916]="MCMXVII";	
               allNumeralsumerals[1917]="MCMXVIII";	
               allNumeralsumerals[1918]="MCMXIX";	
               allNumeralsumerals[1919]="MCMXX";	
               allNumeralsumerals[1920]="MCMXXI";	
               allNumeralsumerals[1921]="MCMXXII";	
               allNumeralsumerals[1922]="MCMXXIII";	
               allNumeralsumerals[1923]="MCMXXIV";	
               allNumeralsumerals[1924]="MCMXXV";	
               allNumeralsumerals[1925]="MCMXXVI";	
               allNumeralsumerals[1926]="MCMXXVII";	
               allNumeralsumerals[1927]="MCMXXVIII";	
               allNumeralsumerals[1928]="MCMXXIX";	
               allNumeralsumerals[1929]="MCMXXX";	
               allNumeralsumerals[1930]="MCMXXXI";	
               allNumeralsumerals[1931]="MCMXXXII";	
               allNumeralsumerals[1932]="MCMXXXIII";	
               allNumeralsumerals[1933]="MCMXXXIV";	
               allNumeralsumerals[1934]="MCMXXXV";	
               allNumeralsumerals[1935]="MCMXXXVI";	
               allNumeralsumerals[1936]="MCMXXXVII";	
               allNumeralsumerals[1937]="MCMXXXVIII";	
               allNumeralsumerals[1938]="MCMXXXIX";	
               allNumeralsumerals[1939]="MCMXL";	
               allNumeralsumerals[1940]="MCMXLI";	
               allNumeralsumerals[1941]="MCMXLII";	
               allNumeralsumerals[1942]="MCMXLIII";	
               allNumeralsumerals[1943]="MCMXLIV";	
               allNumeralsumerals[1944]="MCMXLV";	
               allNumeralsumerals[1945]="MCMXLVI";	
               allNumeralsumerals[1946]="MCMXLVII";	
               allNumeralsumerals[1947]="MCMXLVIII";	
               allNumeralsumerals[1948]="MCMXLIX";	
               allNumeralsumerals[1949]="MCML";	
               allNumeralsumerals[1950]="MCMLI";	
               allNumeralsumerals[1951]="MCMLII";	
               allNumeralsumerals[1952]="MCMLIII";	
               allNumeralsumerals[1953]="MCMLIV";	
               allNumeralsumerals[1954]="MCMLV";	
               allNumeralsumerals[1955]="MCMLVI";	
               allNumeralsumerals[1956]="MCMLVII";	
               allNumeralsumerals[1957]="MCMLVIII";	
               allNumeralsumerals[1958]="MCMLIX";	
               allNumeralsumerals[1959]="MCMLX";	
               allNumeralsumerals[1960]="MCMLXI";	
               allNumeralsumerals[1961]="MCMLXII";	
               allNumeralsumerals[1962]="MCMLXIII";	
               allNumeralsumerals[1963]="MCMLXIV";	
               allNumeralsumerals[1964]="MCMLXV";	
               allNumeralsumerals[1965]="MCMLXVI";	
               allNumeralsumerals[1966]="MCMLXVII";	
               allNumeralsumerals[1967]="MCMLXVIII";	
               allNumeralsumerals[1968]="MCMLXIX";	
               allNumeralsumerals[1969]="MCMLXX";	
               allNumeralsumerals[1970]="MCMLXXI";	
               allNumeralsumerals[1971]="MCMLXXII";	
               allNumeralsumerals[1972]="MCMLXXIII";	
               allNumeralsumerals[1973]="MCMLXXIV";	
               allNumeralsumerals[1974]="MCMLXXV";	
               allNumeralsumerals[1975]="MCMLXXVI";	
               allNumeralsumerals[1976]="MCMLXXVII";	
               allNumeralsumerals[1977]="MCMLXXVIII";	
               allNumeralsumerals[1978]="MCMLXXIX";	
               allNumeralsumerals[1979]="MCMLXXX";	
               allNumeralsumerals[1980]="MCMLXXXI";	
               allNumeralsumerals[1981]="MCMLXXXII";	
               allNumeralsumerals[1982]="MCMLXXXIII";	
               allNumeralsumerals[1983]="MCMLXXXIV";	
               allNumeralsumerals[1984]="MCMLXXXV";	
               allNumeralsumerals[1985]="MCMLXXXVI";	
               allNumeralsumerals[1986]="MCMLXXXVII";	
               allNumeralsumerals[1987]="MCMLXXXVIII";	
               allNumeralsumerals[1988]="MCMLXXXIX";	
               allNumeralsumerals[1989]="MCMXC";	
               allNumeralsumerals[1990]="MCMXCI";	
               allNumeralsumerals[1991]="MCMXCII";	
               allNumeralsumerals[1992]="MCMXCIII";	
               allNumeralsumerals[1993]="MCMXCIV";	
               allNumeralsumerals[1994]="MCMXCV";	
               allNumeralsumerals[1995]="MCMXCVI";	
               allNumeralsumerals[1996]="MCMXCVII";	
               allNumeralsumerals[1997]="MCMXCVIII";	
               allNumeralsumerals[1998]="MCMXCIX";	
               allNumeralsumerals[1999]="MM";	
               allNumeralsumerals[2000]="MMI";	
               allNumeralsumerals[2001]="MMII";	
               allNumeralsumerals[2002]="MMIII";	
               allNumeralsumerals[2003]="MMIV";	
               allNumeralsumerals[2004]="MMV";	
               allNumeralsumerals[2005]="MMVI";	
               allNumeralsumerals[2006]="MMVII";	
               allNumeralsumerals[2007]="MMVIII";	
               allNumeralsumerals[2008]="MMIX";	
               allNumeralsumerals[2009]="MMX";	
               allNumeralsumerals[2010]="MMXI";	
               allNumeralsumerals[2011]="MMXII";	
               allNumeralsumerals[2012]="MMXIII";	
               allNumeralsumerals[2013]="MMXIV";	
               allNumeralsumerals[2014]="MMXV";	
               allNumeralsumerals[2015]="MMXVI";	
               allNumeralsumerals[2016]="MMXVII";	
               allNumeralsumerals[2017]="MMXVIII";	
               allNumeralsumerals[2018]="MMXIX";	
               allNumeralsumerals[2019]="MMXX";	
               allNumeralsumerals[2020]="MMXXI";	
               allNumeralsumerals[2021]="MMXXII";	
               allNumeralsumerals[2022]="MMXXIII";	
               allNumeralsumerals[2023]="MMXXIV";	
               allNumeralsumerals[2024]="MMXXV";	
               allNumeralsumerals[2025]="MMXXVI";	
               allNumeralsumerals[2026]="MMXXVII";	
               allNumeralsumerals[2027]="MMXXVIII";	
               allNumeralsumerals[2028]="MMXXIX";	
               allNumeralsumerals[2029]="MMXXX";	
               allNumeralsumerals[2030]="MMXXXI";	
               allNumeralsumerals[2031]="MMXXXII";	
               allNumeralsumerals[2032]="MMXXXIII";	
               allNumeralsumerals[2033]="MMXXXIV";	
               allNumeralsumerals[2034]="MMXXXV";	
               allNumeralsumerals[2035]="MMXXXVI";	
               allNumeralsumerals[2036]="MMXXXVII";	
               allNumeralsumerals[2037]="MMXXXVIII";	
               allNumeralsumerals[2038]="MMXXXIX";	
               allNumeralsumerals[2039]="MMXL";	
               allNumeralsumerals[2040]="MMXLI";	
               allNumeralsumerals[2041]="MMXLII";	
               allNumeralsumerals[2042]="MMXLIII";	
               allNumeralsumerals[2043]="MMXLIV";	
               allNumeralsumerals[2044]="MMXLV";	
               allNumeralsumerals[2045]="MMXLVI";	
               allNumeralsumerals[2046]="MMXLVII";	
               allNumeralsumerals[2047]="MMXLVIII";	
               allNumeralsumerals[2048]="MMXLIX";	
               allNumeralsumerals[2049]="MML";	
               allNumeralsumerals[2050]="MMLI";	
               allNumeralsumerals[2051]="MMLII";	
               allNumeralsumerals[2052]="MMLIII";	
               allNumeralsumerals[2053]="MMLIV";	
               allNumeralsumerals[2054]="MMLV";	
               allNumeralsumerals[2055]="MMLVI";	
               allNumeralsumerals[2056]="MMLVII";	
               allNumeralsumerals[2057]="MMLVIII";	
               allNumeralsumerals[2058]="MMLIX";	
               allNumeralsumerals[2059]="MMLX";	
               allNumeralsumerals[2060]="MMLXI";	
               allNumeralsumerals[2061]="MMLXII";	
               allNumeralsumerals[2062]="MMLXIII";	
               allNumeralsumerals[2063]="MMLXIV";	
               allNumeralsumerals[2064]="MMLXV";	
               allNumeralsumerals[2065]="MMLXVI";	
               allNumeralsumerals[2066]="MMLXVII";	
               allNumeralsumerals[2067]="MMLXVIII";	
               allNumeralsumerals[2068]="MMLXIX";	
               allNumeralsumerals[2069]="MMLXX";	
               allNumeralsumerals[2070]="MMLXXI";	
               allNumeralsumerals[2071]="MMLXXII";	
               allNumeralsumerals[2072]="MMLXXIII";	
               allNumeralsumerals[2073]="MMLXXIV";	
               allNumeralsumerals[2074]="MMLXXV";	
               allNumeralsumerals[2075]="MMLXXVI";	
               allNumeralsumerals[2076]="MMLXXVII";	
               allNumeralsumerals[2077]="MMLXXVIII";	
               allNumeralsumerals[2078]="MMLXXIX";	
               allNumeralsumerals[2079]="MMLXXX";	
               allNumeralsumerals[2080]="MMLXXXI";	
               allNumeralsumerals[2081]="MMLXXXII";	
               allNumeralsumerals[2082]="MMLXXXIII";	
               allNumeralsumerals[2083]="MMLXXXIV";	
               allNumeralsumerals[2084]="MMLXXXV";	
               allNumeralsumerals[2085]="MMLXXXVI";	
               allNumeralsumerals[2086]="MMLXXXVII";	
               allNumeralsumerals[2087]="MMLXXXVIII";	
               allNumeralsumerals[2088]="MMLXXXIX";	
               allNumeralsumerals[2089]="MMXC";	
               allNumeralsumerals[2090]="MMXCI";	
               allNumeralsumerals[2091]="MMXCII";	
               allNumeralsumerals[2092]="MMXCIII";	
               allNumeralsumerals[2093]="MMXCIV";	
               allNumeralsumerals[2094]="MMXCV";	
               allNumeralsumerals[2095]="MMXCVI";	
               allNumeralsumerals[2096]="MMXCVII";	
               allNumeralsumerals[2097]="MMXCVIII";	
               allNumeralsumerals[2098]="MMXCIX";	
               allNumeralsumerals[2099]="MMC";	
               allNumeralsumerals[2100]="MMCI";	
               allNumeralsumerals[2101]="MMCII";	
               allNumeralsumerals[2102]="MMCIII";	
               allNumeralsumerals[2103]="MMCIV";	
               allNumeralsumerals[2104]="MMCV";	
               allNumeralsumerals[2105]="MMCVI";	
               allNumeralsumerals[2106]="MMCVII";	
               allNumeralsumerals[2107]="MMCVIII";	
               allNumeralsumerals[2108]="MMCIX";	
               allNumeralsumerals[2109]="MMCX";	
               allNumeralsumerals[2110]="MMCXI";	
               allNumeralsumerals[2111]="MMCXII";	
               allNumeralsumerals[2112]="MMCXIII";	
               allNumeralsumerals[2113]="MMCXIV";	
               allNumeralsumerals[2114]="MMCXV";	
               allNumeralsumerals[2115]="MMCXVI";	
               allNumeralsumerals[2116]="MMCXVII";	
               allNumeralsumerals[2117]="MMCXVIII";	
               allNumeralsumerals[2118]="MMCXIX";	
               allNumeralsumerals[2119]="MMCXX";	
               allNumeralsumerals[2120]="MMCXXI";	
               allNumeralsumerals[2121]="MMCXXII";	
               allNumeralsumerals[2122]="MMCXXIII";	
               allNumeralsumerals[2123]="MMCXXIV";	
               allNumeralsumerals[2124]="MMCXXV";	
               allNumeralsumerals[2125]="MMCXXVI";	
               allNumeralsumerals[2126]="MMCXXVII";	
               allNumeralsumerals[2127]="MMCXXVIII";	
               allNumeralsumerals[2128]="MMCXXIX";	
               allNumeralsumerals[2129]="MMCXXX";	
               allNumeralsumerals[2130]="MMCXXXI";	
               allNumeralsumerals[2131]="MMCXXXII";	
               allNumeralsumerals[2132]="MMCXXXIII";	
               allNumeralsumerals[2133]="MMCXXXIV";	
               allNumeralsumerals[2134]="MMCXXXV";	
               allNumeralsumerals[2135]="MMCXXXVI";	
               allNumeralsumerals[2136]="MMCXXXVII";	
               allNumeralsumerals[2137]="MMCXXXVIII";	
               allNumeralsumerals[2138]="MMCXXXIX";	
               allNumeralsumerals[2139]="MMCXL";	
               allNumeralsumerals[2140]="MMCXLI";	
               allNumeralsumerals[2141]="MMCXLII";	
               allNumeralsumerals[2142]="MMCXLIII";	
               allNumeralsumerals[2143]="MMCXLIV";	
               allNumeralsumerals[2144]="MMCXLV";	
               allNumeralsumerals[2145]="MMCXLVI";	
               allNumeralsumerals[2146]="MMCXLVII";	
               allNumeralsumerals[2147]="MMCXLVIII";	
               allNumeralsumerals[2148]="MMCXLIX";	
               allNumeralsumerals[2149]="MMCL";	
               allNumeralsumerals[2150]="MMCLI";	
               allNumeralsumerals[2151]="MMCLII";	
               allNumeralsumerals[2152]="MMCLIII";	
               allNumeralsumerals[2153]="MMCLIV";	
               allNumeralsumerals[2154]="MMCLV";	
               allNumeralsumerals[2155]="MMCLVI";	
               allNumeralsumerals[2156]="MMCLVII";	
               allNumeralsumerals[2157]="MMCLVIII";	
               allNumeralsumerals[2158]="MMCLIX";	
               allNumeralsumerals[2159]="MMCLX";	
               allNumeralsumerals[2160]="MMCLXI";	
               allNumeralsumerals[2161]="MMCLXII";	
               allNumeralsumerals[2162]="MMCLXIII";	
               allNumeralsumerals[2163]="MMCLXIV";	
               allNumeralsumerals[2164]="MMCLXV";	
               allNumeralsumerals[2165]="MMCLXVI";	
               allNumeralsumerals[2166]="MMCLXVII";	
               allNumeralsumerals[2167]="MMCLXVIII";	
               allNumeralsumerals[2168]="MMCLXIX";	
               allNumeralsumerals[2169]="MMCLXX";	
               allNumeralsumerals[2170]="MMCLXXI";	
               allNumeralsumerals[2171]="MMCLXXII";	
               allNumeralsumerals[2172]="MMCLXXIII";	
               allNumeralsumerals[2173]="MMCLXXIV";	
               allNumeralsumerals[2174]="MMCLXXV";	
               allNumeralsumerals[2175]="MMCLXXVI";	
               allNumeralsumerals[2176]="MMCLXXVII";	
               allNumeralsumerals[2177]="MMCLXXVIII";	
               allNumeralsumerals[2178]="MMCLXXIX";	
               allNumeralsumerals[2179]="MMCLXXX";	
               allNumeralsumerals[2180]="MMCLXXXI";	
               allNumeralsumerals[2181]="MMCLXXXII";	
               allNumeralsumerals[2182]="MMCLXXXIII";	
               allNumeralsumerals[2183]="MMCLXXXIV";	
               allNumeralsumerals[2184]="MMCLXXXV";	
               allNumeralsumerals[2185]="MMCLXXXVI";	
               allNumeralsumerals[2186]="MMCLXXXVII";	
               allNumeralsumerals[2187]="MMCLXXXVIII";	
               allNumeralsumerals[2188]="MMCLXXXIX";	
               allNumeralsumerals[2189]="MMCXC";	
               allNumeralsumerals[2190]="MMCXCI";	
               allNumeralsumerals[2191]="MMCXCII";	
               allNumeralsumerals[2192]="MMCXCIII";	
               allNumeralsumerals[2193]="MMCXCIV";	
               allNumeralsumerals[2194]="MMCXCV";	
               allNumeralsumerals[2195]="MMCXCVI";	
               allNumeralsumerals[2196]="MMCXCVII";	
               allNumeralsumerals[2197]="MMCXCVIII";	
               allNumeralsumerals[2198]="MMCXCIX";	
               allNumeralsumerals[2199]="MMCC";	
               allNumeralsumerals[2200]="MMCCI";	
               allNumeralsumerals[2201]="MMCCII";	
               allNumeralsumerals[2202]="MMCCIII";	
               allNumeralsumerals[2203]="MMCCIV";	
               allNumeralsumerals[2204]="MMCCV";	
               allNumeralsumerals[2205]="MMCCVI";	
               allNumeralsumerals[2206]="MMCCVII";	
               allNumeralsumerals[2207]="MMCCVIII";	
               allNumeralsumerals[2208]="MMCCIX";	
               allNumeralsumerals[2209]="MMCCX";	
               allNumeralsumerals[2210]="MMCCXI";	
               allNumeralsumerals[2211]="MMCCXII";	
               allNumeralsumerals[2212]="MMCCXIII";	
               allNumeralsumerals[2213]="MMCCXIV";	
               allNumeralsumerals[2214]="MMCCXV";	
               allNumeralsumerals[2215]="MMCCXVI";	
               allNumeralsumerals[2216]="MMCCXVII";	
               allNumeralsumerals[2217]="MMCCXVIII";	
               allNumeralsumerals[2218]="MMCCXIX";	
               allNumeralsumerals[2219]="MMCCXX";	
               allNumeralsumerals[2220]="MMCCXXI";	
               allNumeralsumerals[2221]="MMCCXXII";	
               allNumeralsumerals[2222]="MMCCXXIII";	
               allNumeralsumerals[2223]="MMCCXXIV";	
               allNumeralsumerals[2224]="MMCCXXV";	
               allNumeralsumerals[2225]="MMCCXXVI";	
               allNumeralsumerals[2226]="MMCCXXVII";	
               allNumeralsumerals[2227]="MMCCXXVIII";	
               allNumeralsumerals[2228]="MMCCXXIX";	
               allNumeralsumerals[2229]="MMCCXXX";	
               allNumeralsumerals[2230]="MMCCXXXI";	
               allNumeralsumerals[2231]="MMCCXXXII";	
               allNumeralsumerals[2232]="MMCCXXXIII";	
               allNumeralsumerals[2233]="MMCCXXXIV";	
               allNumeralsumerals[2234]="MMCCXXXV";	
               allNumeralsumerals[2235]="MMCCXXXVI";	
               allNumeralsumerals[2236]="MMCCXXXVII";	
               allNumeralsumerals[2237]="MMCCXXXVIII";	
               allNumeralsumerals[2238]="MMCCXXXIX";	
               allNumeralsumerals[2239]="MMCCXL";	
               allNumeralsumerals[2240]="MMCCXLI";	
               allNumeralsumerals[2241]="MMCCXLII";	
               allNumeralsumerals[2242]="MMCCXLIII";	
               allNumeralsumerals[2243]="MMCCXLIV";	
               allNumeralsumerals[2244]="MMCCXLV";	
               allNumeralsumerals[2245]="MMCCXLVI";	
               allNumeralsumerals[2246]="MMCCXLVII";	
               allNumeralsumerals[2247]="MMCCXLVIII";	
               allNumeralsumerals[2248]="MMCCXLIX";	
               allNumeralsumerals[2249]="MMCCL";	
               allNumeralsumerals[2250]="MMCCLI";	
               allNumeralsumerals[2251]="MMCCLII";	
               allNumeralsumerals[2252]="MMCCLIII";	
               allNumeralsumerals[2253]="MMCCLIV";	
               allNumeralsumerals[2254]="MMCCLV";	
               allNumeralsumerals[2255]="MMCCLVI";	
               allNumeralsumerals[2256]="MMCCLVII";	
               allNumeralsumerals[2257]="MMCCLVIII";	
               allNumeralsumerals[2258]="MMCCLIX";	
               allNumeralsumerals[2259]="MMCCLX";	
               allNumeralsumerals[2260]="MMCCLXI";	
               allNumeralsumerals[2261]="MMCCLXII";	
               allNumeralsumerals[2262]="MMCCLXIII";	
               allNumeralsumerals[2263]="MMCCLXIV";	
               allNumeralsumerals[2264]="MMCCLXV";	
               allNumeralsumerals[2265]="MMCCLXVI";	
               allNumeralsumerals[2266]="MMCCLXVII";	
               allNumeralsumerals[2267]="MMCCLXVIII";	
               allNumeralsumerals[2268]="MMCCLXIX";	
               allNumeralsumerals[2269]="MMCCLXX";	
               allNumeralsumerals[2270]="MMCCLXXI";	
               allNumeralsumerals[2271]="MMCCLXXII";	
               allNumeralsumerals[2272]="MMCCLXXIII";	
               allNumeralsumerals[2273]="MMCCLXXIV";	
               allNumeralsumerals[2274]="MMCCLXXV";	
               allNumeralsumerals[2275]="MMCCLXXVI";	
               allNumeralsumerals[2276]="MMCCLXXVII";	
               allNumeralsumerals[2277]="MMCCLXXVIII";	
               allNumeralsumerals[2278]="MMCCLXXIX";	
               allNumeralsumerals[2279]="MMCCLXXX";	
               allNumeralsumerals[2280]="MMCCLXXXI";	
               allNumeralsumerals[2281]="MMCCLXXXII";	
               allNumeralsumerals[2282]="MMCCLXXXIII";	
               allNumeralsumerals[2283]="MMCCLXXXIV";	
               allNumeralsumerals[2284]="MMCCLXXXV";	
               allNumeralsumerals[2285]="MMCCLXXXVI";	
               allNumeralsumerals[2286]="MMCCLXXXVII";	
               allNumeralsumerals[2287]="MMCCLXXXVIII";	
               allNumeralsumerals[2288]="MMCCLXXXIX";	
               allNumeralsumerals[2289]="MMCCXC";	
               allNumeralsumerals[2290]="MMCCXCI";	
               allNumeralsumerals[2291]="MMCCXCII";	
               allNumeralsumerals[2292]="MMCCXCIII";	
               allNumeralsumerals[2293]="MMCCXCIV";	
               allNumeralsumerals[2294]="MMCCXCV";	
               allNumeralsumerals[2295]="MMCCXCVI";	
               allNumeralsumerals[2296]="MMCCXCVII";	
               allNumeralsumerals[2297]="MMCCXCVIII";	
               allNumeralsumerals[2298]="MMCCXCIX";	
               allNumeralsumerals[2299]="MMCCC";	
               allNumeralsumerals[2300]="MMCCCI";	
               allNumeralsumerals[2301]="MMCCCII";	
               allNumeralsumerals[2302]="MMCCCIII";	
               allNumeralsumerals[2303]="MMCCCIV";	
               allNumeralsumerals[2304]="MMCCCV";	
               allNumeralsumerals[2305]="MMCCCVI";	
               allNumeralsumerals[2306]="MMCCCVII";	
               allNumeralsumerals[2307]="MMCCCVIII";	
               allNumeralsumerals[2308]="MMCCCIX";	
               allNumeralsumerals[2309]="MMCCCX";	
               allNumeralsumerals[2310]="MMCCCXI";	
               allNumeralsumerals[2311]="MMCCCXII";	
               allNumeralsumerals[2312]="MMCCCXIII";	
               allNumeralsumerals[2313]="MMCCCXIV";	
               allNumeralsumerals[2314]="MMCCCXV";	
               allNumeralsumerals[2315]="MMCCCXVI";	
               allNumeralsumerals[2316]="MMCCCXVII";	
               allNumeralsumerals[2317]="MMCCCXVIII";	
               allNumeralsumerals[2318]="MMCCCXIX";	
               allNumeralsumerals[2319]="MMCCCXX";	
               allNumeralsumerals[2320]="MMCCCXXI";	
               allNumeralsumerals[2321]="MMCCCXXII";	
               allNumeralsumerals[2322]="MMCCCXXIII";	
               allNumeralsumerals[2323]="MMCCCXXIV";	
               allNumeralsumerals[2324]="MMCCCXXV";	
               allNumeralsumerals[2325]="MMCCCXXVI";	
               allNumeralsumerals[2326]="MMCCCXXVII";	
               allNumeralsumerals[2327]="MMCCCXXVIII";	
               allNumeralsumerals[2328]="MMCCCXXIX";	
               allNumeralsumerals[2329]="MMCCCXXX";	
               allNumeralsumerals[2330]="MMCCCXXXI";	
               allNumeralsumerals[2331]="MMCCCXXXII";	
               allNumeralsumerals[2332]="MMCCCXXXIII";	
               allNumeralsumerals[2333]="MMCCCXXXIV";	
               allNumeralsumerals[2334]="MMCCCXXXV";	
               allNumeralsumerals[2335]="MMCCCXXXVI";	
               allNumeralsumerals[2336]="MMCCCXXXVII";	
               allNumeralsumerals[2337]="MMCCCXXXVIII";	
               allNumeralsumerals[2338]="MMCCCXXXIX";	
               allNumeralsumerals[2339]="MMCCCXL";	
               allNumeralsumerals[2340]="MMCCCXLI";	
               allNumeralsumerals[2341]="MMCCCXLII";	
               allNumeralsumerals[2342]="MMCCCXLIII";	
               allNumeralsumerals[2343]="MMCCCXLIV";	
               allNumeralsumerals[2344]="MMCCCXLV";	
               allNumeralsumerals[2345]="MMCCCXLVI";	
               allNumeralsumerals[2346]="MMCCCXLVII";	
               allNumeralsumerals[2347]="MMCCCXLVIII";	
               allNumeralsumerals[2348]="MMCCCXLIX";	
               allNumeralsumerals[2349]="MMCCCL";	
               allNumeralsumerals[2350]="MMCCCLI";	
               allNumeralsumerals[2351]="MMCCCLII";	
               allNumeralsumerals[2352]="MMCCCLIII";	
               allNumeralsumerals[2353]="MMCCCLIV";	
               allNumeralsumerals[2354]="MMCCCLV";	
               allNumeralsumerals[2355]="MMCCCLVI";	
               allNumeralsumerals[2356]="MMCCCLVII";	
               allNumeralsumerals[2357]="MMCCCLVIII";	
               allNumeralsumerals[2358]="MMCCCLIX";	
               allNumeralsumerals[2359]="MMCCCLX";	
               allNumeralsumerals[2360]="MMCCCLXI";	
               allNumeralsumerals[2361]="MMCCCLXII";	
               allNumeralsumerals[2362]="MMCCCLXIII";	
               allNumeralsumerals[2363]="MMCCCLXIV";	
               allNumeralsumerals[2364]="MMCCCLXV";	
               allNumeralsumerals[2365]="MMCCCLXVI";	
               allNumeralsumerals[2366]="MMCCCLXVII";	
               allNumeralsumerals[2367]="MMCCCLXVIII";	
               allNumeralsumerals[2368]="MMCCCLXIX";	
               allNumeralsumerals[2369]="MMCCCLXX";	
               allNumeralsumerals[2370]="MMCCCLXXI";	
               allNumeralsumerals[2371]="MMCCCLXXII";	
               allNumeralsumerals[2372]="MMCCCLXXIII";	
               allNumeralsumerals[2373]="MMCCCLXXIV";	
               allNumeralsumerals[2374]="MMCCCLXXV";	
               allNumeralsumerals[2375]="MMCCCLXXVI";	
               allNumeralsumerals[2376]="MMCCCLXXVII";	
               allNumeralsumerals[2377]="MMCCCLXXVIII";	
               allNumeralsumerals[2378]="MMCCCLXXIX";	
               allNumeralsumerals[2379]="MMCCCLXXX";	
               allNumeralsumerals[2380]="MMCCCLXXXI";	
               allNumeralsumerals[2381]="MMCCCLXXXII";	
               allNumeralsumerals[2382]="MMCCCLXXXIII";	
               allNumeralsumerals[2383]="MMCCCLXXXIV";	
               allNumeralsumerals[2384]="MMCCCLXXXV";	
               allNumeralsumerals[2385]="MMCCCLXXXVI";	
               allNumeralsumerals[2386]="MMCCCLXXXVII";	
               allNumeralsumerals[2387]="MMCCCLXXXVIII";	
               allNumeralsumerals[2388]="MMCCCLXXXIX";	
               allNumeralsumerals[2389]="MMCCCXC";	
               allNumeralsumerals[2390]="MMCCCXCI";	
               allNumeralsumerals[2391]="MMCCCXCII";	
               allNumeralsumerals[2392]="MMCCCXCIII";	
               allNumeralsumerals[2393]="MMCCCXCIV";	
               allNumeralsumerals[2394]="MMCCCXCV";	
               allNumeralsumerals[2395]="MMCCCXCVI";	
               allNumeralsumerals[2396]="MMCCCXCVII";	
               allNumeralsumerals[2397]="MMCCCXCVIII";	
               allNumeralsumerals[2398]="MMCCCXCIX";	
               allNumeralsumerals[2399]="MMCD";	
               allNumeralsumerals[2400]="MMCDI";	
               allNumeralsumerals[2401]="MMCDII";	
               allNumeralsumerals[2402]="MMCDIII";	
               allNumeralsumerals[2403]="MMCDIV";	
               allNumeralsumerals[2404]="MMCDV";	
               allNumeralsumerals[2405]="MMCDVI";	
               allNumeralsumerals[2406]="MMCDVII";	
               allNumeralsumerals[2407]="MMCDVIII";	
               allNumeralsumerals[2408]="MMCDIX";	
               allNumeralsumerals[2409]="MMCDX";	
               allNumeralsumerals[2410]="MMCDXI";	
               allNumeralsumerals[2411]="MMCDXII";	
               allNumeralsumerals[2412]="MMCDXIII";	
               allNumeralsumerals[2413]="MMCDXIV";	
               allNumeralsumerals[2414]="MMCDXV";	
               allNumeralsumerals[2415]="MMCDXVI";	
               allNumeralsumerals[2416]="MMCDXVII";	
               allNumeralsumerals[2417]="MMCDXVIII";	
               allNumeralsumerals[2418]="MMCDXIX";	
               allNumeralsumerals[2419]="MMCDXX";	
               allNumeralsumerals[2420]="MMCDXXI";	
               allNumeralsumerals[2421]="MMCDXXII";	
               allNumeralsumerals[2422]="MMCDXXIII";	
               allNumeralsumerals[2423]="MMCDXXIV";	
               allNumeralsumerals[2424]="MMCDXXV";	
               allNumeralsumerals[2425]="MMCDXXVI";	
               allNumeralsumerals[2426]="MMCDXXVII";	
               allNumeralsumerals[2427]="MMCDXXVIII";	
               allNumeralsumerals[2428]="MMCDXXIX";	
               allNumeralsumerals[2429]="MMCDXXX";	
               allNumeralsumerals[2430]="MMCDXXXI";	
               allNumeralsumerals[2431]="MMCDXXXII";	
               allNumeralsumerals[2432]="MMCDXXXIII";	
               allNumeralsumerals[2433]="MMCDXXXIV";	
               allNumeralsumerals[2434]="MMCDXXXV";	
               allNumeralsumerals[2435]="MMCDXXXVI";	
               allNumeralsumerals[2436]="MMCDXXXVII";	
               allNumeralsumerals[2437]="MMCDXXXVIII";	
               allNumeralsumerals[2438]="MMCDXXXIX";	
               allNumeralsumerals[2439]="MMCDXL";	
               allNumeralsumerals[2440]="MMCDXLI";	
               allNumeralsumerals[2441]="MMCDXLII";	
               allNumeralsumerals[2442]="MMCDXLIII";	
               allNumeralsumerals[2443]="MMCDXLIV";	
               allNumeralsumerals[2444]="MMCDXLV";	
               allNumeralsumerals[2445]="MMCDXLVI";	
               allNumeralsumerals[2446]="MMCDXLVII";	
               allNumeralsumerals[2447]="MMCDXLVIII";	
               allNumeralsumerals[2448]="MMCDXLIX";	
               allNumeralsumerals[2449]="MMCDL";	
               allNumeralsumerals[2450]="MMCDLI";	
               allNumeralsumerals[2451]="MMCDLII";	
               allNumeralsumerals[2452]="MMCDLIII";	
               allNumeralsumerals[2453]="MMCDLIV";	
               allNumeralsumerals[2454]="MMCDLV";	
               allNumeralsumerals[2455]="MMCDLVI";	
               allNumeralsumerals[2456]="MMCDLVII";	
               allNumeralsumerals[2457]="MMCDLVIII";	
               allNumeralsumerals[2458]="MMCDLIX";	
               allNumeralsumerals[2459]="MMCDLX";	
               allNumeralsumerals[2460]="MMCDLXI";	
               allNumeralsumerals[2461]="MMCDLXII";	
               allNumeralsumerals[2462]="MMCDLXIII";	
               allNumeralsumerals[2463]="MMCDLXIV";	
               allNumeralsumerals[2464]="MMCDLXV";	
               allNumeralsumerals[2465]="MMCDLXVI";	
               allNumeralsumerals[2466]="MMCDLXVII";	
               allNumeralsumerals[2467]="MMCDLXVIII";	
               allNumeralsumerals[2468]="MMCDLXIX";	
               allNumeralsumerals[2469]="MMCDLXX";	
               allNumeralsumerals[2470]="MMCDLXXI";	
               allNumeralsumerals[2471]="MMCDLXXII";	
               allNumeralsumerals[2472]="MMCDLXXIII";	
               allNumeralsumerals[2473]="MMCDLXXIV";	
               allNumeralsumerals[2474]="MMCDLXXV";	
               allNumeralsumerals[2475]="MMCDLXXVI";	
               allNumeralsumerals[2476]="MMCDLXXVII";	
               allNumeralsumerals[2477]="MMCDLXXVIII";	
               allNumeralsumerals[2478]="MMCDLXXIX";	
               allNumeralsumerals[2479]="MMCDLXXX";	
               allNumeralsumerals[2480]="MMCDLXXXI";	
               allNumeralsumerals[2481]="MMCDLXXXII";	
               allNumeralsumerals[2482]="MMCDLXXXIII";	
               allNumeralsumerals[2483]="MMCDLXXXIV";	
               allNumeralsumerals[2484]="MMCDLXXXV";	
               allNumeralsumerals[2485]="MMCDLXXXVI";	
               allNumeralsumerals[2486]="MMCDLXXXVII";	
               allNumeralsumerals[2487]="MMCDLXXXVIII";	
               allNumeralsumerals[2488]="MMCDLXXXIX";	
               allNumeralsumerals[2489]="MMCDXC";	
               allNumeralsumerals[2490]="MMCDXCI";	
               allNumeralsumerals[2491]="MMCDXCII";	
               allNumeralsumerals[2492]="MMCDXCIII";	
               allNumeralsumerals[2493]="MMCDXCIV";	
               allNumeralsumerals[2494]="MMCDXCV";	
               allNumeralsumerals[2495]="MMCDXCVI";	
               allNumeralsumerals[2496]="MMCDXCVII";	
               allNumeralsumerals[2497]="MMCDXCVIII";	
               allNumeralsumerals[2498]="MMCDXCIX";	
               allNumeralsumerals[2499]="MMD";	
               allNumeralsumerals[2500]="MMDI";	
               allNumeralsumerals[2501]="MMDII";	
               allNumeralsumerals[2502]="MMDIII";	
               allNumeralsumerals[2503]="MMDIV";	
               allNumeralsumerals[2504]="MMDV";	
               allNumeralsumerals[2505]="MMDVI";	
               allNumeralsumerals[2506]="MMDVII";	
               allNumeralsumerals[2507]="MMDVIII";	
               allNumeralsumerals[2508]="MMDIX";	
               allNumeralsumerals[2509]="MMDX";	
               allNumeralsumerals[2510]="MMDXI";	
               allNumeralsumerals[2511]="MMDXII";	
               allNumeralsumerals[2512]="MMDXIII";	
               allNumeralsumerals[2513]="MMDXIV";	
               allNumeralsumerals[2514]="MMDXV";	
               allNumeralsumerals[2515]="MMDXVI";	
               allNumeralsumerals[2516]="MMDXVII";	
               allNumeralsumerals[2517]="MMDXVIII";	
               allNumeralsumerals[2518]="MMDXIX";	
               allNumeralsumerals[2519]="MMDXX";	
               allNumeralsumerals[2520]="MMDXXI";	
               allNumeralsumerals[2521]="MMDXXII";	
               allNumeralsumerals[2522]="MMDXXIII";	
               allNumeralsumerals[2523]="MMDXXIV";	
               allNumeralsumerals[2524]="MMDXXV";	
               allNumeralsumerals[2525]="MMDXXVI";	
               allNumeralsumerals[2526]="MMDXXVII";	
               allNumeralsumerals[2527]="MMDXXVIII";	
               allNumeralsumerals[2528]="MMDXXIX";	
               allNumeralsumerals[2529]="MMDXXX";	
               allNumeralsumerals[2530]="MMDXXXI";	
               allNumeralsumerals[2531]="MMDXXXII";	
               allNumeralsumerals[2532]="MMDXXXIII";	
               allNumeralsumerals[2533]="MMDXXXIV";	
               allNumeralsumerals[2534]="MMDXXXV";	
               allNumeralsumerals[2535]="MMDXXXVI";	
               allNumeralsumerals[2536]="MMDXXXVII";	
               allNumeralsumerals[2537]="MMDXXXVIII";	
               allNumeralsumerals[2538]="MMDXXXIX";	
               allNumeralsumerals[2539]="MMDXL";	
               allNumeralsumerals[2540]="MMDXLI";	
               allNumeralsumerals[2541]="MMDXLII";	
               allNumeralsumerals[2542]="MMDXLIII";	
               allNumeralsumerals[2543]="MMDXLIV";	
               allNumeralsumerals[2544]="MMDXLV";	
               allNumeralsumerals[2545]="MMDXLVI";	
               allNumeralsumerals[2546]="MMDXLVII";	
               allNumeralsumerals[2547]="MMDXLVIII";	
               allNumeralsumerals[2548]="MMDXLIX";	
               allNumeralsumerals[2549]="MMDL";	
               allNumeralsumerals[2550]="MMDLI";	
               allNumeralsumerals[2551]="MMDLII";	
               allNumeralsumerals[2552]="MMDLIII";	
               allNumeralsumerals[2553]="MMDLIV";	
               allNumeralsumerals[2554]="MMDLV";	
               allNumeralsumerals[2555]="MMDLVI";	
               allNumeralsumerals[2556]="MMDLVII";	
               allNumeralsumerals[2557]="MMDLVIII";	
               allNumeralsumerals[2558]="MMDLIX";	
               allNumeralsumerals[2559]="MMDLX";	
               allNumeralsumerals[2560]="MMDLXI";	
               allNumeralsumerals[2561]="MMDLXII";	
               allNumeralsumerals[2562]="MMDLXIII";	
               allNumeralsumerals[2563]="MMDLXIV";	
               allNumeralsumerals[2564]="MMDLXV";	
               allNumeralsumerals[2565]="MMDLXVI";	
               allNumeralsumerals[2566]="MMDLXVII";	
               allNumeralsumerals[2567]="MMDLXVIII";	
               allNumeralsumerals[2568]="MMDLXIX";	
               allNumeralsumerals[2569]="MMDLXX";	
               allNumeralsumerals[2570]="MMDLXXI";	
               allNumeralsumerals[2571]="MMDLXXII";	
               allNumeralsumerals[2572]="MMDLXXIII";	
               allNumeralsumerals[2573]="MMDLXXIV";	
               allNumeralsumerals[2574]="MMDLXXV";	
               allNumeralsumerals[2575]="MMDLXXVI";	
               allNumeralsumerals[2576]="MMDLXXVII";	
               allNumeralsumerals[2577]="MMDLXXVIII";	
               allNumeralsumerals[2578]="MMDLXXIX";	
               allNumeralsumerals[2579]="MMDLXXX";	
               allNumeralsumerals[2580]="MMDLXXXI";	
               allNumeralsumerals[2581]="MMDLXXXII";	
               allNumeralsumerals[2582]="MMDLXXXIII";	
               allNumeralsumerals[2583]="MMDLXXXIV";	
               allNumeralsumerals[2584]="MMDLXXXV";	
               allNumeralsumerals[2585]="MMDLXXXVI";	
               allNumeralsumerals[2586]="MMDLXXXVII";	
               allNumeralsumerals[2587]="MMDLXXXVIII";	
               allNumeralsumerals[2588]="MMDLXXXIX";	
               allNumeralsumerals[2589]="MMDXC";	
               allNumeralsumerals[2590]="MMDXCI";	
               allNumeralsumerals[2591]="MMDXCII";	
               allNumeralsumerals[2592]="MMDXCIII";	
               allNumeralsumerals[2593]="MMDXCIV";	
               allNumeralsumerals[2594]="MMDXCV";	
               allNumeralsumerals[2595]="MMDXCVI";	
               allNumeralsumerals[2596]="MMDXCVII";	
               allNumeralsumerals[2597]="MMDXCVIII";	
               allNumeralsumerals[2598]="MMDXCIX";	
               allNumeralsumerals[2599]="MMDC";	
               allNumeralsumerals[2600]="MMDCI";	
               allNumeralsumerals[2601]="MMDCII";	
               allNumeralsumerals[2602]="MMDCIII";	
               allNumeralsumerals[2603]="MMDCIV";	
               allNumeralsumerals[2604]="MMDCV";	
               allNumeralsumerals[2605]="MMDCVI";	
               allNumeralsumerals[2606]="MMDCVII";	
               allNumeralsumerals[2607]="MMDCVIII";	
               allNumeralsumerals[2608]="MMDCIX";	
               allNumeralsumerals[2609]="MMDCX";	
               allNumeralsumerals[2610]="MMDCXI";	
               allNumeralsumerals[2611]="MMDCXII";	
               allNumeralsumerals[2612]="MMDCXIII";	
               allNumeralsumerals[2613]="MMDCXIV";	
               allNumeralsumerals[2614]="MMDCXV";	
               allNumeralsumerals[2615]="MMDCXVI";	
               allNumeralsumerals[2616]="MMDCXVII";	
               allNumeralsumerals[2617]="MMDCXVIII";	
               allNumeralsumerals[2618]="MMDCXIX";	
               allNumeralsumerals[2619]="MMDCXX";	
               allNumeralsumerals[2620]="MMDCXXI";	
               allNumeralsumerals[2621]="MMDCXXII";	
               allNumeralsumerals[2622]="MMDCXXIII";	
               allNumeralsumerals[2623]="MMDCXXIV";	
               allNumeralsumerals[2624]="MMDCXXV";	
               allNumeralsumerals[2625]="MMDCXXVI";	
               allNumeralsumerals[2626]="MMDCXXVII";	
               allNumeralsumerals[2627]="MMDCXXVIII";	
               allNumeralsumerals[2628]="MMDCXXIX";	
               allNumeralsumerals[2629]="MMDCXXX";	
               allNumeralsumerals[2630]="MMDCXXXI";	
               allNumeralsumerals[2631]="MMDCXXXII";	
               allNumeralsumerals[2632]="MMDCXXXIII";	
               allNumeralsumerals[2633]="MMDCXXXIV";	
               allNumeralsumerals[2634]="MMDCXXXV";	
               allNumeralsumerals[2635]="MMDCXXXVI";	
               allNumeralsumerals[2636]="MMDCXXXVII";	
               allNumeralsumerals[2637]="MMDCXXXVIII";	
               allNumeralsumerals[2638]="MMDCXXXIX";	
               allNumeralsumerals[2639]="MMDCXL";	
               allNumeralsumerals[2640]="MMDCXLI";	
               allNumeralsumerals[2641]="MMDCXLII";	
               allNumeralsumerals[2642]="MMDCXLIII";	
               allNumeralsumerals[2643]="MMDCXLIV";	
               allNumeralsumerals[2644]="MMDCXLV";	
               allNumeralsumerals[2645]="MMDCXLVI";	
               allNumeralsumerals[2646]="MMDCXLVII";	
               allNumeralsumerals[2647]="MMDCXLVIII";	
               allNumeralsumerals[2648]="MMDCXLIX";	
               allNumeralsumerals[2649]="MMDCL";	
               allNumeralsumerals[2650]="MMDCLI";	
               allNumeralsumerals[2651]="MMDCLII";	
               allNumeralsumerals[2652]="MMDCLIII";	
               allNumeralsumerals[2653]="MMDCLIV";	
               allNumeralsumerals[2654]="MMDCLV";	
               allNumeralsumerals[2655]="MMDCLVI";	
               allNumeralsumerals[2656]="MMDCLVII";	
               allNumeralsumerals[2657]="MMDCLVIII";	
               allNumeralsumerals[2658]="MMDCLIX";	
               allNumeralsumerals[2659]="MMDCLX";	
               allNumeralsumerals[2660]="MMDCLXI";	
               allNumeralsumerals[2661]="MMDCLXII";	
               allNumeralsumerals[2662]="MMDCLXIII";	
               allNumeralsumerals[2663]="MMDCLXIV";	
               allNumeralsumerals[2664]="MMDCLXV";	
               allNumeralsumerals[2665]="MMDCLXVI";	
               allNumeralsumerals[2666]="MMDCLXVII";	
               allNumeralsumerals[2667]="MMDCLXVIII";	
               allNumeralsumerals[2668]="MMDCLXIX";	
               allNumeralsumerals[2669]="MMDCLXX";	
               allNumeralsumerals[2670]="MMDCLXXI";	
               allNumeralsumerals[2671]="MMDCLXXII";	
               allNumeralsumerals[2672]="MMDCLXXIII";	
               allNumeralsumerals[2673]="MMDCLXXIV";	
               allNumeralsumerals[2674]="MMDCLXXV";	
               allNumeralsumerals[2675]="MMDCLXXVI";	
               allNumeralsumerals[2676]="MMDCLXXVII";	
               allNumeralsumerals[2677]="MMDCLXXVIII";	
               allNumeralsumerals[2678]="MMDCLXXIX";	
               allNumeralsumerals[2679]="MMDCLXXX";	
               allNumeralsumerals[2680]="MMDCLXXXI";	
               allNumeralsumerals[2681]="MMDCLXXXII";	
               allNumeralsumerals[2682]="MMDCLXXXIII";	
               allNumeralsumerals[2683]="MMDCLXXXIV";	
               allNumeralsumerals[2684]="MMDCLXXXV";	
               allNumeralsumerals[2685]="MMDCLXXXVI";	
               allNumeralsumerals[2686]="MMDCLXXXVII";	
               allNumeralsumerals[2687]="MMDCLXXXVIII";	
               allNumeralsumerals[2688]="MMDCLXXXIX";	
               allNumeralsumerals[2689]="MMDCXC";	
               allNumeralsumerals[2690]="MMDCXCI";	
               allNumeralsumerals[2691]="MMDCXCII";	
               allNumeralsumerals[2692]="MMDCXCIII";	
               allNumeralsumerals[2693]="MMDCXCIV";	
               allNumeralsumerals[2694]="MMDCXCV";	
               allNumeralsumerals[2695]="MMDCXCVI";	
               allNumeralsumerals[2696]="MMDCXCVII";	
               allNumeralsumerals[2697]="MMDCXCVIII";	
               allNumeralsumerals[2698]="MMDCXCIX";	
               allNumeralsumerals[2699]="MMDCC";	
               allNumeralsumerals[2700]="MMDCCI";	
               allNumeralsumerals[2701]="MMDCCII";	
               allNumeralsumerals[2702]="MMDCCIII";	
               allNumeralsumerals[2703]="MMDCCIV";	
               allNumeralsumerals[2704]="MMDCCV";	
               allNumeralsumerals[2705]="MMDCCVI";	
               allNumeralsumerals[2706]="MMDCCVII";	
               allNumeralsumerals[2707]="MMDCCVIII";	
               allNumeralsumerals[2708]="MMDCCIX";	
               allNumeralsumerals[2709]="MMDCCX";	
               allNumeralsumerals[2710]="MMDCCXI";	
               allNumeralsumerals[2711]="MMDCCXII";	
               allNumeralsumerals[2712]="MMDCCXIII";	
               allNumeralsumerals[2713]="MMDCCXIV";	
               allNumeralsumerals[2714]="MMDCCXV";	
               allNumeralsumerals[2715]="MMDCCXVI";	
               allNumeralsumerals[2716]="MMDCCXVII";	
               allNumeralsumerals[2717]="MMDCCXVIII";	
               allNumeralsumerals[2718]="MMDCCXIX";	
               allNumeralsumerals[2719]="MMDCCXX";	
               allNumeralsumerals[2720]="MMDCCXXI";	
               allNumeralsumerals[2721]="MMDCCXXII";	
               allNumeralsumerals[2722]="MMDCCXXIII";	
               allNumeralsumerals[2723]="MMDCCXXIV";	
               allNumeralsumerals[2724]="MMDCCXXV";	
               allNumeralsumerals[2725]="MMDCCXXVI";	
               allNumeralsumerals[2726]="MMDCCXXVII";	
               allNumeralsumerals[2727]="MMDCCXXVIII";	
               allNumeralsumerals[2728]="MMDCCXXIX";	
               allNumeralsumerals[2729]="MMDCCXXX";	
               allNumeralsumerals[2730]="MMDCCXXXI";	
               allNumeralsumerals[2731]="MMDCCXXXII";	
               allNumeralsumerals[2732]="MMDCCXXXIII";	
               allNumeralsumerals[2733]="MMDCCXXXIV";	
               allNumeralsumerals[2734]="MMDCCXXXV";	
               allNumeralsumerals[2735]="MMDCCXXXVI";	
               allNumeralsumerals[2736]="MMDCCXXXVII";	
               allNumeralsumerals[2737]="MMDCCXXXVIII";	
               allNumeralsumerals[2738]="MMDCCXXXIX";	
               allNumeralsumerals[2739]="MMDCCXL";	
               allNumeralsumerals[2740]="MMDCCXLI";	
               allNumeralsumerals[2741]="MMDCCXLII";	
               allNumeralsumerals[2742]="MMDCCXLIII";	
               allNumeralsumerals[2743]="MMDCCXLIV";	
               allNumeralsumerals[2744]="MMDCCXLV";	
               allNumeralsumerals[2745]="MMDCCXLVI";	
               allNumeralsumerals[2746]="MMDCCXLVII";	
               allNumeralsumerals[2747]="MMDCCXLVIII";	
               allNumeralsumerals[2748]="MMDCCXLIX";	
               allNumeralsumerals[2749]="MMDCCL";	
               allNumeralsumerals[2750]="MMDCCLI";	
               allNumeralsumerals[2751]="MMDCCLII";	
               allNumeralsumerals[2752]="MMDCCLIII";	
               allNumeralsumerals[2753]="MMDCCLIV";	
               allNumeralsumerals[2754]="MMDCCLV";	
               allNumeralsumerals[2755]="MMDCCLVI";	
               allNumeralsumerals[2756]="MMDCCLVII";	
               allNumeralsumerals[2757]="MMDCCLVIII";	
               allNumeralsumerals[2758]="MMDCCLIX";	
               allNumeralsumerals[2759]="MMDCCLX";	
               allNumeralsumerals[2760]="MMDCCLXI";	
               allNumeralsumerals[2761]="MMDCCLXII";	
               allNumeralsumerals[2762]="MMDCCLXIII";	
               allNumeralsumerals[2763]="MMDCCLXIV";	
               allNumeralsumerals[2764]="MMDCCLXV";	
               allNumeralsumerals[2765]="MMDCCLXVI";	
               allNumeralsumerals[2766]="MMDCCLXVII";	
               allNumeralsumerals[2767]="MMDCCLXVIII";	
               allNumeralsumerals[2768]="MMDCCLXIX";	
               allNumeralsumerals[2769]="MMDCCLXX";	
               allNumeralsumerals[2770]="MMDCCLXXI";	
               allNumeralsumerals[2771]="MMDCCLXXII";	
               allNumeralsumerals[2772]="MMDCCLXXIII";	
               allNumeralsumerals[2773]="MMDCCLXXIV";	
               allNumeralsumerals[2774]="MMDCCLXXV";	
               allNumeralsumerals[2775]="MMDCCLXXVI";	
               allNumeralsumerals[2776]="MMDCCLXXVII";	
               allNumeralsumerals[2777]="MMDCCLXXVIII";	
               allNumeralsumerals[2778]="MMDCCLXXIX";	
               allNumeralsumerals[2779]="MMDCCLXXX";	
               allNumeralsumerals[2780]="MMDCCLXXXI";	
               allNumeralsumerals[2781]="MMDCCLXXXII";	
               allNumeralsumerals[2782]="MMDCCLXXXIII";	
               allNumeralsumerals[2783]="MMDCCLXXXIV";	
               allNumeralsumerals[2784]="MMDCCLXXXV";	
               allNumeralsumerals[2785]="MMDCCLXXXVI";	
               allNumeralsumerals[2786]="MMDCCLXXXVII";	
               allNumeralsumerals[2787]="MMDCCLXXXVIII";	
               allNumeralsumerals[2788]="MMDCCLXXXIX";	
               allNumeralsumerals[2789]="MMDCCXC";	
               allNumeralsumerals[2790]="MMDCCXCI";	
               allNumeralsumerals[2791]="MMDCCXCII";	
               allNumeralsumerals[2792]="MMDCCXCIII";	
               allNumeralsumerals[2793]="MMDCCXCIV";	
               allNumeralsumerals[2794]="MMDCCXCV";	
               allNumeralsumerals[2795]="MMDCCXCVI";	
               allNumeralsumerals[2796]="MMDCCXCVII";	
               allNumeralsumerals[2797]="MMDCCXCVIII";	
               allNumeralsumerals[2798]="MMDCCXCIX";	
               allNumeralsumerals[2799]="MMDCCC";	
               allNumeralsumerals[2800]="MMDCCCI";	
               allNumeralsumerals[2801]="MMDCCCII";	
               allNumeralsumerals[2802]="MMDCCCIII";	
               allNumeralsumerals[2803]="MMDCCCIV";	
               allNumeralsumerals[2804]="MMDCCCV";	
               allNumeralsumerals[2805]="MMDCCCVI";	
               allNumeralsumerals[2806]="MMDCCCVII";	
               allNumeralsumerals[2807]="MMDCCCVIII";	
               allNumeralsumerals[2808]="MMDCCCIX";	
               allNumeralsumerals[2809]="MMDCCCX";	
               allNumeralsumerals[2810]="MMDCCCXI";	
               allNumeralsumerals[2811]="MMDCCCXII";	
               allNumeralsumerals[2812]="MMDCCCXIII";	
               allNumeralsumerals[2813]="MMDCCCXIV";	
               allNumeralsumerals[2814]="MMDCCCXV";	
               allNumeralsumerals[2815]="MMDCCCXVI";	
               allNumeralsumerals[2816]="MMDCCCXVII";	
               allNumeralsumerals[2817]="MMDCCCXVIII";	
               allNumeralsumerals[2818]="MMDCCCXIX";	
               allNumeralsumerals[2819]="MMDCCCXX";	
               allNumeralsumerals[2820]="MMDCCCXXI";	
               allNumeralsumerals[2821]="MMDCCCXXII";	
               allNumeralsumerals[2822]="MMDCCCXXIII";	
               allNumeralsumerals[2823]="MMDCCCXXIV";	
               allNumeralsumerals[2824]="MMDCCCXXV";	
               allNumeralsumerals[2825]="MMDCCCXXVI";	
               allNumeralsumerals[2826]="MMDCCCXXVII";	
               allNumeralsumerals[2827]="MMDCCCXXVIII";	
               allNumeralsumerals[2828]="MMDCCCXXIX";	
               allNumeralsumerals[2829]="MMDCCCXXX";	
               allNumeralsumerals[2830]="MMDCCCXXXI";	
               allNumeralsumerals[2831]="MMDCCCXXXII";	
               allNumeralsumerals[2832]="MMDCCCXXXIII";	
               allNumeralsumerals[2833]="MMDCCCXXXIV";	
               allNumeralsumerals[2834]="MMDCCCXXXV";	
               allNumeralsumerals[2835]="MMDCCCXXXVI";	
               allNumeralsumerals[2836]="MMDCCCXXXVII";	
               allNumeralsumerals[2837]="MMDCCCXXXVIII";	
               allNumeralsumerals[2838]="MMDCCCXXXIX";	
               allNumeralsumerals[2839]="MMDCCCXL";	
               allNumeralsumerals[2840]="MMDCCCXLI";	
               allNumeralsumerals[2841]="MMDCCCXLII";	
               allNumeralsumerals[2842]="MMDCCCXLIII";	
               allNumeralsumerals[2843]="MMDCCCXLIV";	
               allNumeralsumerals[2844]="MMDCCCXLV";	
               allNumeralsumerals[2845]="MMDCCCXLVI";	
               allNumeralsumerals[2846]="MMDCCCXLVII";	
               allNumeralsumerals[2847]="MMDCCCXLVIII";	
               allNumeralsumerals[2848]="MMDCCCXLIX";	
               allNumeralsumerals[2849]="MMDCCCL";	
               allNumeralsumerals[2850]="MMDCCCLI";	
               allNumeralsumerals[2851]="MMDCCCLII";	
               allNumeralsumerals[2852]="MMDCCCLIII";	
               allNumeralsumerals[2853]="MMDCCCLIV";	
               allNumeralsumerals[2854]="MMDCCCLV";	
               allNumeralsumerals[2855]="MMDCCCLVI";	
               allNumeralsumerals[2856]="MMDCCCLVII";	
               allNumeralsumerals[2857]="MMDCCCLVIII";	
               allNumeralsumerals[2858]="MMDCCCLIX";	
               allNumeralsumerals[2859]="MMDCCCLX";	
               allNumeralsumerals[2860]="MMDCCCLXI";	
               allNumeralsumerals[2861]="MMDCCCLXII";	
               allNumeralsumerals[2862]="MMDCCCLXIII";	
               allNumeralsumerals[2863]="MMDCCCLXIV";	
               allNumeralsumerals[2864]="MMDCCCLXV";	
               allNumeralsumerals[2865]="MMDCCCLXVI";	
               allNumeralsumerals[2866]="MMDCCCLXVII";	
               allNumeralsumerals[2867]="MMDCCCLXVIII";	
               allNumeralsumerals[2868]="MMDCCCLXIX";	
               allNumeralsumerals[2869]="MMDCCCLXX";	
               allNumeralsumerals[2870]="MMDCCCLXXI";	
               allNumeralsumerals[2871]="MMDCCCLXXII";	
               allNumeralsumerals[2872]="MMDCCCLXXIII";	
               allNumeralsumerals[2873]="MMDCCCLXXIV";	
               allNumeralsumerals[2874]="MMDCCCLXXV";	
               allNumeralsumerals[2875]="MMDCCCLXXVI";	
               allNumeralsumerals[2876]="MMDCCCLXXVII";	
               allNumeralsumerals[2877]="MMDCCCLXXVIII";	
               allNumeralsumerals[2878]="MMDCCCLXXIX";	
               allNumeralsumerals[2879]="MMDCCCLXXX";	
               allNumeralsumerals[2880]="MMDCCCLXXXI";	
               allNumeralsumerals[2881]="MMDCCCLXXXII";	
               allNumeralsumerals[2882]="MMDCCCLXXXIII";	
               allNumeralsumerals[2883]="MMDCCCLXXXIV";	
               allNumeralsumerals[2884]="MMDCCCLXXXV";	
               allNumeralsumerals[2885]="MMDCCCLXXXVI";	
               allNumeralsumerals[2886]="MMDCCCLXXXVII";	
               allNumeralsumerals[2887]="MMDCCCLXXXVIII";	
               allNumeralsumerals[2888]="MMDCCCLXXXIX";	
               allNumeralsumerals[2889]="MMDCCCXC";	
               allNumeralsumerals[2890]="MMDCCCXCI";	
               allNumeralsumerals[2891]="MMDCCCXCII";	
               allNumeralsumerals[2892]="MMDCCCXCIII";	
               allNumeralsumerals[2893]="MMDCCCXCIV";	
               allNumeralsumerals[2894]="MMDCCCXCV";	
               allNumeralsumerals[2895]="MMDCCCXCVI";	
               allNumeralsumerals[2896]="MMDCCCXCVII";	
               allNumeralsumerals[2897]="MMDCCCXCVIII";	
               allNumeralsumerals[2898]="MMDCCCXCIX";	
               allNumeralsumerals[2899]="MMCM";	
               allNumeralsumerals[2900]="MMCMI";	
               allNumeralsumerals[2901]="MMCMII";	
               allNumeralsumerals[2902]="MMCMIII";	
               allNumeralsumerals[2903]="MMCMIV";	
               allNumeralsumerals[2904]="MMCMV";	
               allNumeralsumerals[2905]="MMCMVI";	
               allNumeralsumerals[2906]="MMCMVII";	
               allNumeralsumerals[2907]="MMCMVIII";	
               allNumeralsumerals[2908]="MMCMIX";	
               allNumeralsumerals[2909]="MMCMX";	
               allNumeralsumerals[2910]="MMCMXI";	
               allNumeralsumerals[2911]="MMCMXII";	
               allNumeralsumerals[2912]="MMCMXIII";	
               allNumeralsumerals[2913]="MMCMXIV";	
               allNumeralsumerals[2914]="MMCMXV";	
               allNumeralsumerals[2915]="MMCMXVI";	
               allNumeralsumerals[2916]="MMCMXVII";	
               allNumeralsumerals[2917]="MMCMXVIII";	
               allNumeralsumerals[2918]="MMCMXIX";	
               allNumeralsumerals[2919]="MMCMXX";	
               allNumeralsumerals[2920]="MMCMXXI";	
               allNumeralsumerals[2921]="MMCMXXII";	
               allNumeralsumerals[2922]="MMCMXXIII";	
               allNumeralsumerals[2923]="MMCMXXIV";	
               allNumeralsumerals[2924]="MMCMXXV";	
               allNumeralsumerals[2925]="MMCMXXVI";	
               allNumeralsumerals[2926]="MMCMXXVII";	
               allNumeralsumerals[2927]="MMCMXXVIII";	
               allNumeralsumerals[2928]="MMCMXXIX";	
               allNumeralsumerals[2929]="MMCMXXX";	
               allNumeralsumerals[2930]="MMCMXXXI";	
               allNumeralsumerals[2931]="MMCMXXXII";	
               allNumeralsumerals[2932]="MMCMXXXIII";	
               allNumeralsumerals[2933]="MMCMXXXIV";	
               allNumeralsumerals[2934]="MMCMXXXV";	
               allNumeralsumerals[2935]="MMCMXXXVI";	
               allNumeralsumerals[2936]="MMCMXXXVII";	
               allNumeralsumerals[2937]="MMCMXXXVIII";	
               allNumeralsumerals[2938]="MMCMXXXIX";	
               allNumeralsumerals[2939]="MMCMXL";	
               allNumeralsumerals[2940]="MMCMXLI";	
               allNumeralsumerals[2941]="MMCMXLII";	
               allNumeralsumerals[2942]="MMCMXLIII";	
               allNumeralsumerals[2943]="MMCMXLIV";	
               allNumeralsumerals[2944]="MMCMXLV";	
               allNumeralsumerals[2945]="MMCMXLVI";	
               allNumeralsumerals[2946]="MMCMXLVII";	
               allNumeralsumerals[2947]="MMCMXLVIII";	
               allNumeralsumerals[2948]="MMCMXLIX";	
               allNumeralsumerals[2949]="MMCML";	
               allNumeralsumerals[2950]="MMCMLI";	
               allNumeralsumerals[2951]="MMCMLII";	
               allNumeralsumerals[2952]="MMCMLIII";	
               allNumeralsumerals[2953]="MMCMLIV";	
               allNumeralsumerals[2954]="MMCMLV";	
               allNumeralsumerals[2955]="MMCMLVI";	
               allNumeralsumerals[2956]="MMCMLVII";	
               allNumeralsumerals[2957]="MMCMLVIII";	
               allNumeralsumerals[2958]="MMCMLIX";	
               allNumeralsumerals[2959]="MMCMLX";	
               allNumeralsumerals[2960]="MMCMLXI";	
               allNumeralsumerals[2961]="MMCMLXII";	
               allNumeralsumerals[2962]="MMCMLXIII";	
               allNumeralsumerals[2963]="MMCMLXIV";	
               allNumeralsumerals[2964]="MMCMLXV";	
               allNumeralsumerals[2965]="MMCMLXVI";	
               allNumeralsumerals[2966]="MMCMLXVII";	
               allNumeralsumerals[2967]="MMCMLXVIII";	
               allNumeralsumerals[2968]="MMCMLXIX";	
               allNumeralsumerals[2969]="MMCMLXX";	
               allNumeralsumerals[2970]="MMCMLXXI";	
               allNumeralsumerals[2971]="MMCMLXXII";	
               allNumeralsumerals[2972]="MMCMLXXIII";	
               allNumeralsumerals[2973]="MMCMLXXIV";	
               allNumeralsumerals[2974]="MMCMLXXV";	
               allNumeralsumerals[2975]="MMCMLXXVI";	
               allNumeralsumerals[2976]="MMCMLXXVII";	
               allNumeralsumerals[2977]="MMCMLXXVIII";	
               allNumeralsumerals[2978]="MMCMLXXIX";	
               allNumeralsumerals[2979]="MMCMLXXX";	
               allNumeralsumerals[2980]="MMCMLXXXI";	
               allNumeralsumerals[2981]="MMCMLXXXII";	
               allNumeralsumerals[2982]="MMCMLXXXIII";	
               allNumeralsumerals[2983]="MMCMLXXXIV";	
               allNumeralsumerals[2984]="MMCMLXXXV";	
               allNumeralsumerals[2985]="MMCMLXXXVI";	
               allNumeralsumerals[2986]="MMCMLXXXVII";	
               allNumeralsumerals[2987]="MMCMLXXXVIII";	
               allNumeralsumerals[2988]="MMCMLXXXIX";	
               allNumeralsumerals[2989]="MMCMXC";	
               allNumeralsumerals[2990]="MMCMXCI";	
               allNumeralsumerals[2991]="MMCMXCII";	
               allNumeralsumerals[2992]="MMCMXCIII";	
               allNumeralsumerals[2993]="MMCMXCIV";	
               allNumeralsumerals[2994]="MMCMXCV";	
               allNumeralsumerals[2995]="MMCMXCVI";	
               allNumeralsumerals[2996]="MMCMXCVII";	
               allNumeralsumerals[2997]="MMCMXCVIII";	
               allNumeralsumerals[2998]="MMCMXCIX";	
               allNumeralsumerals[2999]="MMM";	
               allNumeralsumerals[3000]="MMMI";	
               allNumeralsumerals[3001]="MMMII";	
               allNumeralsumerals[3002]="MMMIII";	
               allNumeralsumerals[3003]="MMMIV";	
               allNumeralsumerals[3004]="MMMV";	
               allNumeralsumerals[3005]="MMMVI";	
               allNumeralsumerals[3006]="MMMVII";	
               allNumeralsumerals[3007]="MMMVIII";	
               allNumeralsumerals[3008]="MMMIX";	
               allNumeralsumerals[3009]="MMMX";	
               allNumeralsumerals[3010]="MMMXI";	
               allNumeralsumerals[3011]="MMMXII";	
               allNumeralsumerals[3012]="MMMXIII";	
               allNumeralsumerals[3013]="MMMXIV";	
               allNumeralsumerals[3014]="MMMXV";	
               allNumeralsumerals[3015]="MMMXVI";	
               allNumeralsumerals[3016]="MMMXVII";	
               allNumeralsumerals[3017]="MMMXVIII";	
               allNumeralsumerals[3018]="MMMXIX";	
               allNumeralsumerals[3019]="MMMXX";	
               allNumeralsumerals[3020]="MMMXXI";	
               allNumeralsumerals[3021]="MMMXXII";	
               allNumeralsumerals[3022]="MMMXXIII";	
               allNumeralsumerals[3023]="MMMXXIV";	
               allNumeralsumerals[3024]="MMMXXV";	
               allNumeralsumerals[3025]="MMMXXVI";	
               allNumeralsumerals[3026]="MMMXXVII";	
               allNumeralsumerals[3027]="MMMXXVIII";	
               allNumeralsumerals[3028]="MMMXXIX";	
               allNumeralsumerals[3029]="MMMXXX";	
               allNumeralsumerals[3030]="MMMXXXI";	
               allNumeralsumerals[3031]="MMMXXXII";	
               allNumeralsumerals[3032]="MMMXXXIII";	
               allNumeralsumerals[3033]="MMMXXXIV";	
               allNumeralsumerals[3034]="MMMXXXV";	
               allNumeralsumerals[3035]="MMMXXXVI";	
               allNumeralsumerals[3036]="MMMXXXVII";	
               allNumeralsumerals[3037]="MMMXXXVIII";	
               allNumeralsumerals[3038]="MMMXXXIX";	
               allNumeralsumerals[3039]="MMMXL";	
               allNumeralsumerals[3040]="MMMXLI";	
               allNumeralsumerals[3041]="MMMXLII";	
               allNumeralsumerals[3042]="MMMXLIII";	
               allNumeralsumerals[3043]="MMMXLIV";	
               allNumeralsumerals[3044]="MMMXLV";	
               allNumeralsumerals[3045]="MMMXLVI";	
               allNumeralsumerals[3046]="MMMXLVII";	
               allNumeralsumerals[3047]="MMMXLVIII";	
               allNumeralsumerals[3048]="MMMXLIX";	
               allNumeralsumerals[3049]="MMML";	
               allNumeralsumerals[3050]="MMMLI";	
               allNumeralsumerals[3051]="MMMLII";	
               allNumeralsumerals[3052]="MMMLIII";	
               allNumeralsumerals[3053]="MMMLIV";	
               allNumeralsumerals[3054]="MMMLV";	
               allNumeralsumerals[3055]="MMMLVI";	
               allNumeralsumerals[3056]="MMMLVII";	
               allNumeralsumerals[3057]="MMMLVIII";	
               allNumeralsumerals[3058]="MMMLIX";	
               allNumeralsumerals[3059]="MMMLX";	
               allNumeralsumerals[3060]="MMMLXI";	
               allNumeralsumerals[3061]="MMMLXII";	
               allNumeralsumerals[3062]="MMMLXIII";	
               allNumeralsumerals[3063]="MMMLXIV";	
               allNumeralsumerals[3064]="MMMLXV";	
               allNumeralsumerals[3065]="MMMLXVI";	
               allNumeralsumerals[3066]="MMMLXVII";	
               allNumeralsumerals[3067]="MMMLXVIII";	
               allNumeralsumerals[3068]="MMMLXIX";	
               allNumeralsumerals[3069]="MMMLXX";	
               allNumeralsumerals[3070]="MMMLXXI";	
               allNumeralsumerals[3071]="MMMLXXII";	
               allNumeralsumerals[3072]="MMMLXXIII";	
               allNumeralsumerals[3073]="MMMLXXIV";	
               allNumeralsumerals[3074]="MMMLXXV";	
               allNumeralsumerals[3075]="MMMLXXVI";	
               allNumeralsumerals[3076]="MMMLXXVII";	
               allNumeralsumerals[3077]="MMMLXXVIII";	
               allNumeralsumerals[3078]="MMMLXXIX";	
               allNumeralsumerals[3079]="MMMLXXX";	
               allNumeralsumerals[3080]="MMMLXXXI";	
               allNumeralsumerals[3081]="MMMLXXXII";	
               allNumeralsumerals[3082]="MMMLXXXIII";	
               allNumeralsumerals[3083]="MMMLXXXIV";	
               allNumeralsumerals[3084]="MMMLXXXV";	
               allNumeralsumerals[3085]="MMMLXXXVI";	
               allNumeralsumerals[3086]="MMMLXXXVII";	
               allNumeralsumerals[3087]="MMMLXXXVIII";	
               allNumeralsumerals[3088]="MMMLXXXIX";	
               allNumeralsumerals[3089]="MMMXC";	
               allNumeralsumerals[3090]="MMMXCI";	
               allNumeralsumerals[3091]="MMMXCII";	
               allNumeralsumerals[3092]="MMMXCIII";	
               allNumeralsumerals[3093]="MMMXCIV";	
               allNumeralsumerals[3094]="MMMXCV";	
               allNumeralsumerals[3095]="MMMXCVI";	
               allNumeralsumerals[3096]="MMMXCVII";	
               allNumeralsumerals[3097]="MMMXCVIII";	
               allNumeralsumerals[3098]="MMMXCIX";	
               allNumeralsumerals[3099]="MMMC";	
               allNumeralsumerals[3100]="MMMCI";	
               allNumeralsumerals[3101]="MMMCII";	
               allNumeralsumerals[3102]="MMMCIII";	
               allNumeralsumerals[3103]="MMMCIV";	
               allNumeralsumerals[3104]="MMMCV";	
               allNumeralsumerals[3105]="MMMCVI";	
               allNumeralsumerals[3106]="MMMCVII";	
               allNumeralsumerals[3107]="MMMCVIII";	
               allNumeralsumerals[3108]="MMMCIX";	
               allNumeralsumerals[3109]="MMMCX";	
               allNumeralsumerals[3110]="MMMCXI";	
               allNumeralsumerals[3111]="MMMCXII";	
               allNumeralsumerals[3112]="MMMCXIII";	
               allNumeralsumerals[3113]="MMMCXIV";	
               allNumeralsumerals[3114]="MMMCXV";	
               allNumeralsumerals[3115]="MMMCXVI";	
               allNumeralsumerals[3116]="MMMCXVII";	
               allNumeralsumerals[3117]="MMMCXVIII";	
               allNumeralsumerals[3118]="MMMCXIX";	
               allNumeralsumerals[3119]="MMMCXX";	
               allNumeralsumerals[3120]="MMMCXXI";	
               allNumeralsumerals[3121]="MMMCXXII";	
               allNumeralsumerals[3122]="MMMCXXIII";	
               allNumeralsumerals[3123]="MMMCXXIV";	
               allNumeralsumerals[3124]="MMMCXXV";	
               allNumeralsumerals[3125]="MMMCXXVI";	
               allNumeralsumerals[3126]="MMMCXXVII";	
               allNumeralsumerals[3127]="MMMCXXVIII";	
               allNumeralsumerals[3128]="MMMCXXIX";	
               allNumeralsumerals[3129]="MMMCXXX";	
               allNumeralsumerals[3130]="MMMCXXXI";	
               allNumeralsumerals[3131]="MMMCXXXII";	
               allNumeralsumerals[3132]="MMMCXXXIII";	
               allNumeralsumerals[3133]="MMMCXXXIV";	
               allNumeralsumerals[3134]="MMMCXXXV";	
               allNumeralsumerals[3135]="MMMCXXXVI";	
               allNumeralsumerals[3136]="MMMCXXXVII";	
               allNumeralsumerals[3137]="MMMCXXXVIII";	
               allNumeralsumerals[3138]="MMMCXXXIX";	
               allNumeralsumerals[3139]="MMMCXL";	
               allNumeralsumerals[3140]="MMMCXLI";	
               allNumeralsumerals[3141]="MMMCXLII";	
               allNumeralsumerals[3142]="MMMCXLIII";	
               allNumeralsumerals[3143]="MMMCXLIV";	
               allNumeralsumerals[3144]="MMMCXLV";	
               allNumeralsumerals[3145]="MMMCXLVI";	
               allNumeralsumerals[3146]="MMMCXLVII";	
               allNumeralsumerals[3147]="MMMCXLVIII";	
               allNumeralsumerals[3148]="MMMCXLIX";	
               allNumeralsumerals[3149]="MMMCL";	
               allNumeralsumerals[3150]="MMMCLI";	
               allNumeralsumerals[3151]="MMMCLII";	
               allNumeralsumerals[3152]="MMMCLIII";	
               allNumeralsumerals[3153]="MMMCLIV";	
               allNumeralsumerals[3154]="MMMCLV";	
               allNumeralsumerals[3155]="MMMCLVI";	
               allNumeralsumerals[3156]="MMMCLVII";	
               allNumeralsumerals[3157]="MMMCLVIII";	
               allNumeralsumerals[3158]="MMMCLIX";	
               allNumeralsumerals[3159]="MMMCLX";	
               allNumeralsumerals[3160]="MMMCLXI";	
               allNumeralsumerals[3161]="MMMCLXII";	
               allNumeralsumerals[3162]="MMMCLXIII";	
               allNumeralsumerals[3163]="MMMCLXIV";	
               allNumeralsumerals[3164]="MMMCLXV";	
               allNumeralsumerals[3165]="MMMCLXVI";	
               allNumeralsumerals[3166]="MMMCLXVII";	
               allNumeralsumerals[3167]="MMMCLXVIII";	
               allNumeralsumerals[3168]="MMMCLXIX";	
               allNumeralsumerals[3169]="MMMCLXX";	
               allNumeralsumerals[3170]="MMMCLXXI";	
               allNumeralsumerals[3171]="MMMCLXXII";	
               allNumeralsumerals[3172]="MMMCLXXIII";	
               allNumeralsumerals[3173]="MMMCLXXIV";	
               allNumeralsumerals[3174]="MMMCLXXV";	
               allNumeralsumerals[3175]="MMMCLXXVI";	
               allNumeralsumerals[3176]="MMMCLXXVII";	
               allNumeralsumerals[3177]="MMMCLXXVIII";	
               allNumeralsumerals[3178]="MMMCLXXIX";	
               allNumeralsumerals[3179]="MMMCLXXX";	
               allNumeralsumerals[3180]="MMMCLXXXI";	
               allNumeralsumerals[3181]="MMMCLXXXII";	
               allNumeralsumerals[3182]="MMMCLXXXIII";	
               allNumeralsumerals[3183]="MMMCLXXXIV";	
               allNumeralsumerals[3184]="MMMCLXXXV";	
               allNumeralsumerals[3185]="MMMCLXXXVI";	
               allNumeralsumerals[3186]="MMMCLXXXVII";	
               allNumeralsumerals[3187]="MMMCLXXXVIII";	
               allNumeralsumerals[3188]="MMMCLXXXIX";	
               allNumeralsumerals[3189]="MMMCXC";	
               allNumeralsumerals[3190]="MMMCXCI";	
               allNumeralsumerals[3191]="MMMCXCII";	
               allNumeralsumerals[3192]="MMMCXCIII";	
               allNumeralsumerals[3193]="MMMCXCIV";	
               allNumeralsumerals[3194]="MMMCXCV";	
               allNumeralsumerals[3195]="MMMCXCVI";	
               allNumeralsumerals[3196]="MMMCXCVII";	
               allNumeralsumerals[3197]="MMMCXCVIII";	
               allNumeralsumerals[3198]="MMMCXCIX";	
               allNumeralsumerals[3199]="MMMCC";	
               allNumeralsumerals[3200]="MMMCCI";	
               allNumeralsumerals[3201]="MMMCCII";	
               allNumeralsumerals[3202]="MMMCCIII";	
               allNumeralsumerals[3203]="MMMCCIV";	
               allNumeralsumerals[3204]="MMMCCV";	
               allNumeralsumerals[3205]="MMMCCVI";	
               allNumeralsumerals[3206]="MMMCCVII";	
               allNumeralsumerals[3207]="MMMCCVIII";	
               allNumeralsumerals[3208]="MMMCCIX";	
               allNumeralsumerals[3209]="MMMCCX";	
               allNumeralsumerals[3210]="MMMCCXI";	
               allNumeralsumerals[3211]="MMMCCXII";	
               allNumeralsumerals[3212]="MMMCCXIII";	
               allNumeralsumerals[3213]="MMMCCXIV";	
               allNumeralsumerals[3214]="MMMCCXV";	
               allNumeralsumerals[3215]="MMMCCXVI";	
               allNumeralsumerals[3216]="MMMCCXVII";	
               allNumeralsumerals[3217]="MMMCCXVIII";	
               allNumeralsumerals[3218]="MMMCCXIX";	
               allNumeralsumerals[3219]="MMMCCXX";	
               allNumeralsumerals[3220]="MMMCCXXI";	
               allNumeralsumerals[3221]="MMMCCXXII";	
               allNumeralsumerals[3222]="MMMCCXXIII";	
               allNumeralsumerals[3223]="MMMCCXXIV";	
               allNumeralsumerals[3224]="MMMCCXXV";	
               allNumeralsumerals[3225]="MMMCCXXVI";	
               allNumeralsumerals[3226]="MMMCCXXVII";	
               allNumeralsumerals[3227]="MMMCCXXVIII";	
               allNumeralsumerals[3228]="MMMCCXXIX";	
               allNumeralsumerals[3229]="MMMCCXXX";	
               allNumeralsumerals[3230]="MMMCCXXXI";	
               allNumeralsumerals[3231]="MMMCCXXXII";	
               allNumeralsumerals[3232]="MMMCCXXXIII";	
               allNumeralsumerals[3233]="MMMCCXXXIV";	
               allNumeralsumerals[3234]="MMMCCXXXV";	
               allNumeralsumerals[3235]="MMMCCXXXVI";	
               allNumeralsumerals[3236]="MMMCCXXXVII";	
               allNumeralsumerals[3237]="MMMCCXXXVIII";	
               allNumeralsumerals[3238]="MMMCCXXXIX";	
               allNumeralsumerals[3239]="MMMCCXL";	
               allNumeralsumerals[3240]="MMMCCXLI";	
               allNumeralsumerals[3241]="MMMCCXLII";	
               allNumeralsumerals[3242]="MMMCCXLIII";	
               allNumeralsumerals[3243]="MMMCCXLIV";	
               allNumeralsumerals[3244]="MMMCCXLV";	
               allNumeralsumerals[3245]="MMMCCXLVI";	
               allNumeralsumerals[3246]="MMMCCXLVII";	
               allNumeralsumerals[3247]="MMMCCXLVIII";	
               allNumeralsumerals[3248]="MMMCCXLIX";	
               allNumeralsumerals[3249]="MMMCCL";	
               allNumeralsumerals[3250]="MMMCCLI";	
               allNumeralsumerals[3251]="MMMCCLII";	
               allNumeralsumerals[3252]="MMMCCLIII";	
               allNumeralsumerals[3253]="MMMCCLIV";	
               allNumeralsumerals[3254]="MMMCCLV";	
               allNumeralsumerals[3255]="MMMCCLVI";	
               allNumeralsumerals[3256]="MMMCCLVII";	
               allNumeralsumerals[3257]="MMMCCLVIII";	
               allNumeralsumerals[3258]="MMMCCLIX";	
               allNumeralsumerals[3259]="MMMCCLX";	
               allNumeralsumerals[3260]="MMMCCLXI";	
               allNumeralsumerals[3261]="MMMCCLXII";	
               allNumeralsumerals[3262]="MMMCCLXIII";	
               allNumeralsumerals[3263]="MMMCCLXIV";	
               allNumeralsumerals[3264]="MMMCCLXV";	
               allNumeralsumerals[3265]="MMMCCLXVI";	
               allNumeralsumerals[3266]="MMMCCLXVII";	
               allNumeralsumerals[3267]="MMMCCLXVIII";	
               allNumeralsumerals[3268]="MMMCCLXIX";	
               allNumeralsumerals[3269]="MMMCCLXX";	
               allNumeralsumerals[3270]="MMMCCLXXI";	
               allNumeralsumerals[3271]="MMMCCLXXII";	
               allNumeralsumerals[3272]="MMMCCLXXIII";	
               allNumeralsumerals[3273]="MMMCCLXXIV";	
               allNumeralsumerals[3274]="MMMCCLXXV";	
               allNumeralsumerals[3275]="MMMCCLXXVI";	
               allNumeralsumerals[3276]="MMMCCLXXVII";	
               allNumeralsumerals[3277]="MMMCCLXXVIII";	
               allNumeralsumerals[3278]="MMMCCLXXIX";	
               allNumeralsumerals[3279]="MMMCCLXXX";	
               allNumeralsumerals[3280]="MMMCCLXXXI";	
               allNumeralsumerals[3281]="MMMCCLXXXII";	
               allNumeralsumerals[3282]="MMMCCLXXXIII";	
               allNumeralsumerals[3283]="MMMCCLXXXIV";	
               allNumeralsumerals[3284]="MMMCCLXXXV";	
               allNumeralsumerals[3285]="MMMCCLXXXVI";	
               allNumeralsumerals[3286]="MMMCCLXXXVII";	
               allNumeralsumerals[3287]="MMMCCLXXXVIII";	
               allNumeralsumerals[3288]="MMMCCLXXXIX";	
               allNumeralsumerals[3289]="MMMCCXC";	
               allNumeralsumerals[3290]="MMMCCXCI";	
               allNumeralsumerals[3291]="MMMCCXCII";	
               allNumeralsumerals[3292]="MMMCCXCIII";	
               allNumeralsumerals[3293]="MMMCCXCIV";	
               allNumeralsumerals[3294]="MMMCCXCV";	
               allNumeralsumerals[3295]="MMMCCXCVI";	
               allNumeralsumerals[3296]="MMMCCXCVII";	
               allNumeralsumerals[3297]="MMMCCXCVIII";	
               allNumeralsumerals[3298]="MMMCCXCIX";	
               allNumeralsumerals[3299]="MMMCCC";	
               allNumeralsumerals[3300]="MMMCCCI";	
               allNumeralsumerals[3301]="MMMCCCII";	
               allNumeralsumerals[3302]="MMMCCCIII";	
               allNumeralsumerals[3303]="MMMCCCIV";	
               allNumeralsumerals[3304]="MMMCCCV";	
               allNumeralsumerals[3305]="MMMCCCVI";	
               allNumeralsumerals[3306]="MMMCCCVII";	
               allNumeralsumerals[3307]="MMMCCCVIII";	
               allNumeralsumerals[3308]="MMMCCCIX";	
               allNumeralsumerals[3309]="MMMCCCX";	
               allNumeralsumerals[3310]="MMMCCCXI";	
               allNumeralsumerals[3311]="MMMCCCXII";	
               allNumeralsumerals[3312]="MMMCCCXIII";	
               allNumeralsumerals[3313]="MMMCCCXIV";	
               allNumeralsumerals[3314]="MMMCCCXV";	
               allNumeralsumerals[3315]="MMMCCCXVI";	
               allNumeralsumerals[3316]="MMMCCCXVII";	
               allNumeralsumerals[3317]="MMMCCCXVIII";	
               allNumeralsumerals[3318]="MMMCCCXIX";	
               allNumeralsumerals[3319]="MMMCCCXX";	
               allNumeralsumerals[3320]="MMMCCCXXI";	
               allNumeralsumerals[3321]="MMMCCCXXII";	
               allNumeralsumerals[3322]="MMMCCCXXIII";	
               allNumeralsumerals[3323]="MMMCCCXXIV";	
               allNumeralsumerals[3324]="MMMCCCXXV";	
               allNumeralsumerals[3325]="MMMCCCXXVI";	
               allNumeralsumerals[3326]="MMMCCCXXVII";	
               allNumeralsumerals[3327]="MMMCCCXXVIII";	
               allNumeralsumerals[3328]="MMMCCCXXIX";	
               allNumeralsumerals[3329]="MMMCCCXXX";	
               allNumeralsumerals[3330]="MMMCCCXXXI";	
               allNumeralsumerals[3331]="MMMCCCXXXII";	
               allNumeralsumerals[3332]="MMMCCCXXXIII";	
               allNumeralsumerals[3333]="MMMCCCXXXIV";	
               allNumeralsumerals[3334]="MMMCCCXXXV";	
               allNumeralsumerals[3335]="MMMCCCXXXVI";	
               allNumeralsumerals[3336]="MMMCCCXXXVII";	
               allNumeralsumerals[3337]="MMMCCCXXXVIII";	
               allNumeralsumerals[3338]="MMMCCCXXXIX";	
               allNumeralsumerals[3339]="MMMCCCXL";	
               allNumeralsumerals[3340]="MMMCCCXLI";	
               allNumeralsumerals[3341]="MMMCCCXLII";	
               allNumeralsumerals[3342]="MMMCCCXLIII";	
               allNumeralsumerals[3343]="MMMCCCXLIV";	
               allNumeralsumerals[3344]="MMMCCCXLV";	
               allNumeralsumerals[3345]="MMMCCCXLVI";	
               allNumeralsumerals[3346]="MMMCCCXLVII";	
               allNumeralsumerals[3347]="MMMCCCXLVIII";	
               allNumeralsumerals[3348]="MMMCCCXLIX";	
               allNumeralsumerals[3349]="MMMCCCL";	
               allNumeralsumerals[3350]="MMMCCCLI";	
               allNumeralsumerals[3351]="MMMCCCLII";	
               allNumeralsumerals[3352]="MMMCCCLIII";	
               allNumeralsumerals[3353]="MMMCCCLIV";	
               allNumeralsumerals[3354]="MMMCCCLV";	
               allNumeralsumerals[3355]="MMMCCCLVI";	
               allNumeralsumerals[3356]="MMMCCCLVII";	
               allNumeralsumerals[3357]="MMMCCCLVIII";	
               allNumeralsumerals[3358]="MMMCCCLIX";	
               allNumeralsumerals[3359]="MMMCCCLX";	
               allNumeralsumerals[3360]="MMMCCCLXI";	
               allNumeralsumerals[3361]="MMMCCCLXII";	
               allNumeralsumerals[3362]="MMMCCCLXIII";	
               allNumeralsumerals[3363]="MMMCCCLXIV";	
               allNumeralsumerals[3364]="MMMCCCLXV";	
               allNumeralsumerals[3365]="MMMCCCLXVI";	
               allNumeralsumerals[3366]="MMMCCCLXVII";	
               allNumeralsumerals[3367]="MMMCCCLXVIII";	
               allNumeralsumerals[3368]="MMMCCCLXIX";	
               allNumeralsumerals[3369]="MMMCCCLXX";	
               allNumeralsumerals[3370]="MMMCCCLXXI";	
               allNumeralsumerals[3371]="MMMCCCLXXII";	
               allNumeralsumerals[3372]="MMMCCCLXXIII";	
               allNumeralsumerals[3373]="MMMCCCLXXIV";	
               allNumeralsumerals[3374]="MMMCCCLXXV";	
               allNumeralsumerals[3375]="MMMCCCLXXVI";	
               allNumeralsumerals[3376]="MMMCCCLXXVII";	
               allNumeralsumerals[3377]="MMMCCCLXXVIII";	
               allNumeralsumerals[3378]="MMMCCCLXXIX";	
               allNumeralsumerals[3379]="MMMCCCLXXX";	
               allNumeralsumerals[3380]="MMMCCCLXXXI";	
               allNumeralsumerals[3381]="MMMCCCLXXXII";	
               allNumeralsumerals[3382]="MMMCCCLXXXIII";	
               allNumeralsumerals[3383]="MMMCCCLXXXIV";	
               allNumeralsumerals[3384]="MMMCCCLXXXV";	
               allNumeralsumerals[3385]="MMMCCCLXXXVI";	
               allNumeralsumerals[3386]="MMMCCCLXXXVII";	
               allNumeralsumerals[3387]="MMMCCCLXXXVIII";	
               allNumeralsumerals[3388]="MMMCCCLXXXIX";	
               allNumeralsumerals[3389]="MMMCCCXC";	
               allNumeralsumerals[3390]="MMMCCCXCI";	
               allNumeralsumerals[3391]="MMMCCCXCII";	
               allNumeralsumerals[3392]="MMMCCCXCIII";	
               allNumeralsumerals[3393]="MMMCCCXCIV";	
               allNumeralsumerals[3394]="MMMCCCXCV";	
               allNumeralsumerals[3395]="MMMCCCXCVI";	
               allNumeralsumerals[3396]="MMMCCCXCVII";	
               allNumeralsumerals[3397]="MMMCCCXCVIII";	
               allNumeralsumerals[3398]="MMMCCCXCIX";	
               allNumeralsumerals[3399]="MMMCD";	
               allNumeralsumerals[3400]="MMMCDI";	
               allNumeralsumerals[3401]="MMMCDII";	
               allNumeralsumerals[3402]="MMMCDIII";	
               allNumeralsumerals[3403]="MMMCDIV";	
               allNumeralsumerals[3404]="MMMCDV";	
               allNumeralsumerals[3405]="MMMCDVI";	
               allNumeralsumerals[3406]="MMMCDVII";	
               allNumeralsumerals[3407]="MMMCDVIII";	
               allNumeralsumerals[3408]="MMMCDIX";	
               allNumeralsumerals[3409]="MMMCDX";	
               allNumeralsumerals[3410]="MMMCDXI";	
               allNumeralsumerals[3411]="MMMCDXII";	
               allNumeralsumerals[3412]="MMMCDXIII";	
               allNumeralsumerals[3413]="MMMCDXIV";	
               allNumeralsumerals[3414]="MMMCDXV";	
               allNumeralsumerals[3415]="MMMCDXVI";	
               allNumeralsumerals[3416]="MMMCDXVII";	
               allNumeralsumerals[3417]="MMMCDXVIII";	
               allNumeralsumerals[3418]="MMMCDXIX";	
               allNumeralsumerals[3419]="MMMCDXX";	
               allNumeralsumerals[3420]="MMMCDXXI";	
               allNumeralsumerals[3421]="MMMCDXXII";	
               allNumeralsumerals[3422]="MMMCDXXIII";	
               allNumeralsumerals[3423]="MMMCDXXIV";	
               allNumeralsumerals[3424]="MMMCDXXV";	
               allNumeralsumerals[3425]="MMMCDXXVI";	
               allNumeralsumerals[3426]="MMMCDXXVII";	
               allNumeralsumerals[3427]="MMMCDXXVIII";	
               allNumeralsumerals[3428]="MMMCDXXIX";	
               allNumeralsumerals[3429]="MMMCDXXX";	
               allNumeralsumerals[3430]="MMMCDXXXI";	
               allNumeralsumerals[3431]="MMMCDXXXII";	
               allNumeralsumerals[3432]="MMMCDXXXIII";	
               allNumeralsumerals[3433]="MMMCDXXXIV";	
               allNumeralsumerals[3434]="MMMCDXXXV";	
               allNumeralsumerals[3435]="MMMCDXXXVI";	
               allNumeralsumerals[3436]="MMMCDXXXVII";	
               allNumeralsumerals[3437]="MMMCDXXXVIII";	
               allNumeralsumerals[3438]="MMMCDXXXIX";	
               allNumeralsumerals[3439]="MMMCDXL";	
               allNumeralsumerals[3440]="MMMCDXLI";	
               allNumeralsumerals[3441]="MMMCDXLII";	
               allNumeralsumerals[3442]="MMMCDXLIII";	
               allNumeralsumerals[3443]="MMMCDXLIV";	
               allNumeralsumerals[3444]="MMMCDXLV";	
               allNumeralsumerals[3445]="MMMCDXLVI";	
               allNumeralsumerals[3446]="MMMCDXLVII";	
               allNumeralsumerals[3447]="MMMCDXLVIII";	
               allNumeralsumerals[3448]="MMMCDXLIX";	
               allNumeralsumerals[3449]="MMMCDL";	
               allNumeralsumerals[3450]="MMMCDLI";	
               allNumeralsumerals[3451]="MMMCDLII";	
               allNumeralsumerals[3452]="MMMCDLIII";	
               allNumeralsumerals[3453]="MMMCDLIV";	
               allNumeralsumerals[3454]="MMMCDLV";	
               allNumeralsumerals[3455]="MMMCDLVI";	
               allNumeralsumerals[3456]="MMMCDLVII";	
               allNumeralsumerals[3457]="MMMCDLVIII";	
               allNumeralsumerals[3458]="MMMCDLIX";	
               allNumeralsumerals[3459]="MMMCDLX";	
               allNumeralsumerals[3460]="MMMCDLXI";	
               allNumeralsumerals[3461]="MMMCDLXII";	
               allNumeralsumerals[3462]="MMMCDLXIII";	
               allNumeralsumerals[3463]="MMMCDLXIV";	
               allNumeralsumerals[3464]="MMMCDLXV";	
               allNumeralsumerals[3465]="MMMCDLXVI";	
               allNumeralsumerals[3466]="MMMCDLXVII";	
               allNumeralsumerals[3467]="MMMCDLXVIII";	
               allNumeralsumerals[3468]="MMMCDLXIX";	
               allNumeralsumerals[3469]="MMMCDLXX";	
               allNumeralsumerals[3470]="MMMCDLXXI";	
               allNumeralsumerals[3471]="MMMCDLXXII";	
               allNumeralsumerals[3472]="MMMCDLXXIII";	
               allNumeralsumerals[3473]="MMMCDLXXIV";	
               allNumeralsumerals[3474]="MMMCDLXXV";	
               allNumeralsumerals[3475]="MMMCDLXXVI";	
               allNumeralsumerals[3476]="MMMCDLXXVII";	
               allNumeralsumerals[3477]="MMMCDLXXVIII";	
               allNumeralsumerals[3478]="MMMCDLXXIX";	
               allNumeralsumerals[3479]="MMMCDLXXX";	
               allNumeralsumerals[3480]="MMMCDLXXXI";	
               allNumeralsumerals[3481]="MMMCDLXXXII";	
               allNumeralsumerals[3482]="MMMCDLXXXIII";	
               allNumeralsumerals[3483]="MMMCDLXXXIV";	
               allNumeralsumerals[3484]="MMMCDLXXXV";	
               allNumeralsumerals[3485]="MMMCDLXXXVI";	
               allNumeralsumerals[3486]="MMMCDLXXXVII";	
               allNumeralsumerals[3487]="MMMCDLXXXVIII";	
               allNumeralsumerals[3488]="MMMCDLXXXIX";	
               allNumeralsumerals[3489]="MMMCDXC";	
               allNumeralsumerals[3490]="MMMCDXCI";	
               allNumeralsumerals[3491]="MMMCDXCII";	
               allNumeralsumerals[3492]="MMMCDXCIII";	
               allNumeralsumerals[3493]="MMMCDXCIV";	
               allNumeralsumerals[3494]="MMMCDXCV";	
               allNumeralsumerals[3495]="MMMCDXCVI";	
               allNumeralsumerals[3496]="MMMCDXCVII";	
               allNumeralsumerals[3497]="MMMCDXCVIII";	
               allNumeralsumerals[3498]="MMMCDXCIX";	
               allNumeralsumerals[3499]="MMMD";	
               allNumeralsumerals[3500]="MMMDI";	
               allNumeralsumerals[3501]="MMMDII";	
               allNumeralsumerals[3502]="MMMDIII";	
               allNumeralsumerals[3503]="MMMDIV";	
               allNumeralsumerals[3504]="MMMDV";	
               allNumeralsumerals[3505]="MMMDVI";	
               allNumeralsumerals[3506]="MMMDVII";	
               allNumeralsumerals[3507]="MMMDVIII";	
               allNumeralsumerals[3508]="MMMDIX";	
               allNumeralsumerals[3509]="MMMDX";	
               allNumeralsumerals[3510]="MMMDXI";	
               allNumeralsumerals[3511]="MMMDXII";	
               allNumeralsumerals[3512]="MMMDXIII";	
               allNumeralsumerals[3513]="MMMDXIV";	
               allNumeralsumerals[3514]="MMMDXV";	
               allNumeralsumerals[3515]="MMMDXVI";	
               allNumeralsumerals[3516]="MMMDXVII";	
               allNumeralsumerals[3517]="MMMDXVIII";	
               allNumeralsumerals[3518]="MMMDXIX";	
               allNumeralsumerals[3519]="MMMDXX";	
               allNumeralsumerals[3520]="MMMDXXI";	
               allNumeralsumerals[3521]="MMMDXXII";	
               allNumeralsumerals[3522]="MMMDXXIII";	
               allNumeralsumerals[3523]="MMMDXXIV";	
               allNumeralsumerals[3524]="MMMDXXV";	
               allNumeralsumerals[3525]="MMMDXXVI";	
               allNumeralsumerals[3526]="MMMDXXVII";	
               allNumeralsumerals[3527]="MMMDXXVIII";	
               allNumeralsumerals[3528]="MMMDXXIX";	
               allNumeralsumerals[3529]="MMMDXXX";	
               allNumeralsumerals[3530]="MMMDXXXI";	
               allNumeralsumerals[3531]="MMMDXXXII";	
               allNumeralsumerals[3532]="MMMDXXXIII";	
               allNumeralsumerals[3533]="MMMDXXXIV";	
               allNumeralsumerals[3534]="MMMDXXXV";	
               allNumeralsumerals[3535]="MMMDXXXVI";	
               allNumeralsumerals[3536]="MMMDXXXVII";	
               allNumeralsumerals[3537]="MMMDXXXVIII";	
               allNumeralsumerals[3538]="MMMDXXXIX";	
               allNumeralsumerals[3539]="MMMDXL";	
               allNumeralsumerals[3540]="MMMDXLI";	
               allNumeralsumerals[3541]="MMMDXLII";	
               allNumeralsumerals[3542]="MMMDXLIII";	
               allNumeralsumerals[3543]="MMMDXLIV";	
               allNumeralsumerals[3544]="MMMDXLV";	
               allNumeralsumerals[3545]="MMMDXLVI";	
               allNumeralsumerals[3546]="MMMDXLVII";	
               allNumeralsumerals[3547]="MMMDXLVIII";	
               allNumeralsumerals[3548]="MMMDXLIX";	
               allNumeralsumerals[3549]="MMMDL";	
               allNumeralsumerals[3550]="MMMDLI";	
               allNumeralsumerals[3551]="MMMDLII";	
               allNumeralsumerals[3552]="MMMDLIII";	
               allNumeralsumerals[3553]="MMMDLIV";	
               allNumeralsumerals[3554]="MMMDLV";	
               allNumeralsumerals[3555]="MMMDLVI";	
               allNumeralsumerals[3556]="MMMDLVII";	
               allNumeralsumerals[3557]="MMMDLVIII";	
               allNumeralsumerals[3558]="MMMDLIX";	
               allNumeralsumerals[3559]="MMMDLX";	
               allNumeralsumerals[3560]="MMMDLXI";	
               allNumeralsumerals[3561]="MMMDLXII";	
               allNumeralsumerals[3562]="MMMDLXIII";	
               allNumeralsumerals[3563]="MMMDLXIV";	
               allNumeralsumerals[3564]="MMMDLXV";	
               allNumeralsumerals[3565]="MMMDLXVI";	
               allNumeralsumerals[3566]="MMMDLXVII";	
               allNumeralsumerals[3567]="MMMDLXVIII";	
               allNumeralsumerals[3568]="MMMDLXIX";	
               allNumeralsumerals[3569]="MMMDLXX";	
               allNumeralsumerals[3570]="MMMDLXXI";	
               allNumeralsumerals[3571]="MMMDLXXII";	
               allNumeralsumerals[3572]="MMMDLXXIII";	
               allNumeralsumerals[3573]="MMMDLXXIV";	
               allNumeralsumerals[3574]="MMMDLXXV";	
               allNumeralsumerals[3575]="MMMDLXXVI";	
               allNumeralsumerals[3576]="MMMDLXXVII";	
               allNumeralsumerals[3577]="MMMDLXXVIII";	
               allNumeralsumerals[3578]="MMMDLXXIX";	
               allNumeralsumerals[3579]="MMMDLXXX";	
               allNumeralsumerals[3580]="MMMDLXXXI";	
               allNumeralsumerals[3581]="MMMDLXXXII";	
               allNumeralsumerals[3582]="MMMDLXXXIII";	
               allNumeralsumerals[3583]="MMMDLXXXIV";	
               allNumeralsumerals[3584]="MMMDLXXXV";	
               allNumeralsumerals[3585]="MMMDLXXXVI";	
               allNumeralsumerals[3586]="MMMDLXXXVII";	
               allNumeralsumerals[3587]="MMMDLXXXVIII";	
               allNumeralsumerals[3588]="MMMDLXXXIX";	
               allNumeralsumerals[3589]="MMMDXC";	
               allNumeralsumerals[3590]="MMMDXCI";	
               allNumeralsumerals[3591]="MMMDXCII";	
               allNumeralsumerals[3592]="MMMDXCIII";	
               allNumeralsumerals[3593]="MMMDXCIV";	
               allNumeralsumerals[3594]="MMMDXCV";	
               allNumeralsumerals[3595]="MMMDXCVI";	
               allNumeralsumerals[3596]="MMMDXCVII";	
               allNumeralsumerals[3597]="MMMDXCVIII";	
               allNumeralsumerals[3598]="MMMDXCIX";	
               allNumeralsumerals[3599]="MMMDC";	
               allNumeralsumerals[3600]="MMMDCI";	
               allNumeralsumerals[3601]="MMMDCII";	
               allNumeralsumerals[3602]="MMMDCIII";	
               allNumeralsumerals[3603]="MMMDCIV";	
               allNumeralsumerals[3604]="MMMDCV";	
               allNumeralsumerals[3605]="MMMDCVI";	
               allNumeralsumerals[3606]="MMMDCVII";	
               allNumeralsumerals[3607]="MMMDCVIII";	
               allNumeralsumerals[3608]="MMMDCIX";	
               allNumeralsumerals[3609]="MMMDCX";	
               allNumeralsumerals[3610]="MMMDCXI";	
               allNumeralsumerals[3611]="MMMDCXII";	
               allNumeralsumerals[3612]="MMMDCXIII";	
               allNumeralsumerals[3613]="MMMDCXIV";	
               allNumeralsumerals[3614]="MMMDCXV";	
               allNumeralsumerals[3615]="MMMDCXVI";	
               allNumeralsumerals[3616]="MMMDCXVII";	
               allNumeralsumerals[3617]="MMMDCXVIII";	
               allNumeralsumerals[3618]="MMMDCXIX";	
               allNumeralsumerals[3619]="MMMDCXX";	
               allNumeralsumerals[3620]="MMMDCXXI";	
               allNumeralsumerals[3621]="MMMDCXXII";	
               allNumeralsumerals[3622]="MMMDCXXIII";	
               allNumeralsumerals[3623]="MMMDCXXIV";	
               allNumeralsumerals[3624]="MMMDCXXV";	
               allNumeralsumerals[3625]="MMMDCXXVI";	
               allNumeralsumerals[3626]="MMMDCXXVII";	
               allNumeralsumerals[3627]="MMMDCXXVIII";	
               allNumeralsumerals[3628]="MMMDCXXIX";	
               allNumeralsumerals[3629]="MMMDCXXX";	
               allNumeralsumerals[3630]="MMMDCXXXI";	
               allNumeralsumerals[3631]="MMMDCXXXII";	
               allNumeralsumerals[3632]="MMMDCXXXIII";	
               allNumeralsumerals[3633]="MMMDCXXXIV";	
               allNumeralsumerals[3634]="MMMDCXXXV";	
               allNumeralsumerals[3635]="MMMDCXXXVI";	
               allNumeralsumerals[3636]="MMMDCXXXVII";	
               allNumeralsumerals[3637]="MMMDCXXXVIII";	
               allNumeralsumerals[3638]="MMMDCXXXIX";	
               allNumeralsumerals[3639]="MMMDCXL";	
               allNumeralsumerals[3640]="MMMDCXLI";	
               allNumeralsumerals[3641]="MMMDCXLII";	
               allNumeralsumerals[3642]="MMMDCXLIII";	
               allNumeralsumerals[3643]="MMMDCXLIV";	
               allNumeralsumerals[3644]="MMMDCXLV";	
               allNumeralsumerals[3645]="MMMDCXLVI";	
               allNumeralsumerals[3646]="MMMDCXLVII";	
               allNumeralsumerals[3647]="MMMDCXLVIII";	
               allNumeralsumerals[3648]="MMMDCXLIX";	
               allNumeralsumerals[3649]="MMMDCL";	
               allNumeralsumerals[3650]="MMMDCLI";	
               allNumeralsumerals[3651]="MMMDCLII";	
               allNumeralsumerals[3652]="MMMDCLIII";	
               allNumeralsumerals[3653]="MMMDCLIV";	
               allNumeralsumerals[3654]="MMMDCLV";	
               allNumeralsumerals[3655]="MMMDCLVI";	
               allNumeralsumerals[3656]="MMMDCLVII";	
               allNumeralsumerals[3657]="MMMDCLVIII";	
               allNumeralsumerals[3658]="MMMDCLIX";	
               allNumeralsumerals[3659]="MMMDCLX";	
               allNumeralsumerals[3660]="MMMDCLXI";	
               allNumeralsumerals[3661]="MMMDCLXII";	
               allNumeralsumerals[3662]="MMMDCLXIII";	
               allNumeralsumerals[3663]="MMMDCLXIV";	
               allNumeralsumerals[3664]="MMMDCLXV";	
               allNumeralsumerals[3665]="MMMDCLXVI";	
               allNumeralsumerals[3666]="MMMDCLXVII";	
               allNumeralsumerals[3667]="MMMDCLXVIII";	
               allNumeralsumerals[3668]="MMMDCLXIX";	
               allNumeralsumerals[3669]="MMMDCLXX";	
               allNumeralsumerals[3670]="MMMDCLXXI";	
               allNumeralsumerals[3671]="MMMDCLXXII";	
               allNumeralsumerals[3672]="MMMDCLXXIII";	
               allNumeralsumerals[3673]="MMMDCLXXIV";	
               allNumeralsumerals[3674]="MMMDCLXXV";	
               allNumeralsumerals[3675]="MMMDCLXXVI";	
               allNumeralsumerals[3676]="MMMDCLXXVII";	
               allNumeralsumerals[3677]="MMMDCLXXVIII";	
               allNumeralsumerals[3678]="MMMDCLXXIX";	
               allNumeralsumerals[3679]="MMMDCLXXX";	
               allNumeralsumerals[3680]="MMMDCLXXXI";	
               allNumeralsumerals[3681]="MMMDCLXXXII";	
               allNumeralsumerals[3682]="MMMDCLXXXIII";	
               allNumeralsumerals[3683]="MMMDCLXXXIV";	
               allNumeralsumerals[3684]="MMMDCLXXXV";	
               allNumeralsumerals[3685]="MMMDCLXXXVI";	
               allNumeralsumerals[3686]="MMMDCLXXXVII";	
               allNumeralsumerals[3687]="MMMDCLXXXVIII";	
               allNumeralsumerals[3688]="MMMDCLXXXIX";	
               allNumeralsumerals[3689]="MMMDCXC";	
               allNumeralsumerals[3690]="MMMDCXCI";	
               allNumeralsumerals[3691]="MMMDCXCII";	
               allNumeralsumerals[3692]="MMMDCXCIII";	
               allNumeralsumerals[3693]="MMMDCXCIV";	
               allNumeralsumerals[3694]="MMMDCXCV";	
               allNumeralsumerals[3695]="MMMDCXCVI";	
               allNumeralsumerals[3696]="MMMDCXCVII";	
               allNumeralsumerals[3697]="MMMDCXCVIII";	
               allNumeralsumerals[3698]="MMMDCXCIX";	
               allNumeralsumerals[3699]="MMMDCC";	
               allNumeralsumerals[3700]="MMMDCCI";	
               allNumeralsumerals[3701]="MMMDCCII";	
               allNumeralsumerals[3702]="MMMDCCIII";	
               allNumeralsumerals[3703]="MMMDCCIV";	
               allNumeralsumerals[3704]="MMMDCCV";	
               allNumeralsumerals[3705]="MMMDCCVI";	
               allNumeralsumerals[3706]="MMMDCCVII";	
               allNumeralsumerals[3707]="MMMDCCVIII";	
               allNumeralsumerals[3708]="MMMDCCIX";	
               allNumeralsumerals[3709]="MMMDCCX";	
               allNumeralsumerals[3710]="MMMDCCXI";	
               allNumeralsumerals[3711]="MMMDCCXII";	
               allNumeralsumerals[3712]="MMMDCCXIII";	
               allNumeralsumerals[3713]="MMMDCCXIV";	
               allNumeralsumerals[3714]="MMMDCCXV";	
               allNumeralsumerals[3715]="MMMDCCXVI";	
               allNumeralsumerals[3716]="MMMDCCXVII";	
               allNumeralsumerals[3717]="MMMDCCXVIII";	
               allNumeralsumerals[3718]="MMMDCCXIX";	
               allNumeralsumerals[3719]="MMMDCCXX";	
               allNumeralsumerals[3720]="MMMDCCXXI";	
               allNumeralsumerals[3721]="MMMDCCXXII";	
               allNumeralsumerals[3722]="MMMDCCXXIII";	
               allNumeralsumerals[3723]="MMMDCCXXIV";	
               allNumeralsumerals[3724]="MMMDCCXXV";	
               allNumeralsumerals[3725]="MMMDCCXXVI";	
               allNumeralsumerals[3726]="MMMDCCXXVII";	
               allNumeralsumerals[3727]="MMMDCCXXVIII";	
               allNumeralsumerals[3728]="MMMDCCXXIX";	
               allNumeralsumerals[3729]="MMMDCCXXX";	
               allNumeralsumerals[3730]="MMMDCCXXXI";	
               allNumeralsumerals[3731]="MMMDCCXXXII";	
               allNumeralsumerals[3732]="MMMDCCXXXIII";	
               allNumeralsumerals[3733]="MMMDCCXXXIV";	
               allNumeralsumerals[3734]="MMMDCCXXXV";	
               allNumeralsumerals[3735]="MMMDCCXXXVI";	
               allNumeralsumerals[3736]="MMMDCCXXXVII";	
               allNumeralsumerals[3737]="MMMDCCXXXVIII";	
               allNumeralsumerals[3738]="MMMDCCXXXIX";	
               allNumeralsumerals[3739]="MMMDCCXL";	
               allNumeralsumerals[3740]="MMMDCCXLI";	
               allNumeralsumerals[3741]="MMMDCCXLII";	
               allNumeralsumerals[3742]="MMMDCCXLIII";	
               allNumeralsumerals[3743]="MMMDCCXLIV";	
               allNumeralsumerals[3744]="MMMDCCXLV";	
               allNumeralsumerals[3745]="MMMDCCXLVI";	
               allNumeralsumerals[3746]="MMMDCCXLVII";	
               allNumeralsumerals[3747]="MMMDCCXLVIII";	
               allNumeralsumerals[3748]="MMMDCCXLIX";	
               allNumeralsumerals[3749]="MMMDCCL";	
               allNumeralsumerals[3750]="MMMDCCLI";	
               allNumeralsumerals[3751]="MMMDCCLII";	
               allNumeralsumerals[3752]="MMMDCCLIII";	
               allNumeralsumerals[3753]="MMMDCCLIV";	
               allNumeralsumerals[3754]="MMMDCCLV";	
               allNumeralsumerals[3755]="MMMDCCLVI";	
               allNumeralsumerals[3756]="MMMDCCLVII";	
               allNumeralsumerals[3757]="MMMDCCLVIII";	
               allNumeralsumerals[3758]="MMMDCCLIX";	
               allNumeralsumerals[3759]="MMMDCCLX";	
               allNumeralsumerals[3760]="MMMDCCLXI";	
               allNumeralsumerals[3761]="MMMDCCLXII";	
               allNumeralsumerals[3762]="MMMDCCLXIII";	
               allNumeralsumerals[3763]="MMMDCCLXIV";	
               allNumeralsumerals[3764]="MMMDCCLXV";	
               allNumeralsumerals[3765]="MMMDCCLXVI";	
               allNumeralsumerals[3766]="MMMDCCLXVII";	
               allNumeralsumerals[3767]="MMMDCCLXVIII";	
               allNumeralsumerals[3768]="MMMDCCLXIX";	
               allNumeralsumerals[3769]="MMMDCCLXX";	
               allNumeralsumerals[3770]="MMMDCCLXXI";	
               allNumeralsumerals[3771]="MMMDCCLXXII";	
               allNumeralsumerals[3772]="MMMDCCLXXIII";	
               allNumeralsumerals[3773]="MMMDCCLXXIV";	
               allNumeralsumerals[3774]="MMMDCCLXXV";	
               allNumeralsumerals[3775]="MMMDCCLXXVI";	
               allNumeralsumerals[3776]="MMMDCCLXXVII";	
               allNumeralsumerals[3777]="MMMDCCLXXVIII";	
               allNumeralsumerals[3778]="MMMDCCLXXIX";	
               allNumeralsumerals[3779]="MMMDCCLXXX";	
               allNumeralsumerals[3780]="MMMDCCLXXXI";	
               allNumeralsumerals[3781]="MMMDCCLXXXII";	
               allNumeralsumerals[3782]="MMMDCCLXXXIII";	
               allNumeralsumerals[3783]="MMMDCCLXXXIV";	
               allNumeralsumerals[3784]="MMMDCCLXXXV";	
               allNumeralsumerals[3785]="MMMDCCLXXXVI";	
               allNumeralsumerals[3786]="MMMDCCLXXXVII";	
               allNumeralsumerals[3787]="MMMDCCLXXXVIII";	
               allNumeralsumerals[3788]="MMMDCCLXXXIX";	
               allNumeralsumerals[3789]="MMMDCCXC";	
               allNumeralsumerals[3790]="MMMDCCXCI";	
               allNumeralsumerals[3791]="MMMDCCXCII";	
               allNumeralsumerals[3792]="MMMDCCXCIII";	
               allNumeralsumerals[3793]="MMMDCCXCIV";	
               allNumeralsumerals[3794]="MMMDCCXCV";	
               allNumeralsumerals[3795]="MMMDCCXCVI";	
               allNumeralsumerals[3796]="MMMDCCXCVII";	
               allNumeralsumerals[3797]="MMMDCCXCVIII";	
               allNumeralsumerals[3798]="MMMDCCXCIX";	
               allNumeralsumerals[3799]="MMMDCCC";	
               allNumeralsumerals[3800]="MMMDCCCI";	
               allNumeralsumerals[3801]="MMMDCCCII";	
               allNumeralsumerals[3802]="MMMDCCCIII";	
               allNumeralsumerals[3803]="MMMDCCCIV";	
               allNumeralsumerals[3804]="MMMDCCCV";	
               allNumeralsumerals[3805]="MMMDCCCVI";	
               allNumeralsumerals[3806]="MMMDCCCVII";	
               allNumeralsumerals[3807]="MMMDCCCVIII";	
               allNumeralsumerals[3808]="MMMDCCCIX";	
               allNumeralsumerals[3809]="MMMDCCCX";	
               allNumeralsumerals[3810]="MMMDCCCXI";	
               allNumeralsumerals[3811]="MMMDCCCXII";	
               allNumeralsumerals[3812]="MMMDCCCXIII";	
               allNumeralsumerals[3813]="MMMDCCCXIV";	
               allNumeralsumerals[3814]="MMMDCCCXV";	
               allNumeralsumerals[3815]="MMMDCCCXVI";	
               allNumeralsumerals[3816]="MMMDCCCXVII";	
               allNumeralsumerals[3817]="MMMDCCCXVIII";	
               allNumeralsumerals[3818]="MMMDCCCXIX";	
               allNumeralsumerals[3819]="MMMDCCCXX";	
               allNumeralsumerals[3820]="MMMDCCCXXI";	
               allNumeralsumerals[3821]="MMMDCCCXXII";	
               allNumeralsumerals[3822]="MMMDCCCXXIII";	
               allNumeralsumerals[3823]="MMMDCCCXXIV";	
               allNumeralsumerals[3824]="MMMDCCCXXV";	
               allNumeralsumerals[3825]="MMMDCCCXXVI";	
               allNumeralsumerals[3826]="MMMDCCCXXVII";	
               allNumeralsumerals[3827]="MMMDCCCXXVIII";	
               allNumeralsumerals[3828]="MMMDCCCXXIX";	
               allNumeralsumerals[3829]="MMMDCCCXXX";	
               allNumeralsumerals[3830]="MMMDCCCXXXI";	
               allNumeralsumerals[3831]="MMMDCCCXXXII";	
               allNumeralsumerals[3832]="MMMDCCCXXXIII";	
               allNumeralsumerals[3833]="MMMDCCCXXXIV";	
               allNumeralsumerals[3834]="MMMDCCCXXXV";	
               allNumeralsumerals[3835]="MMMDCCCXXXVI";	
               allNumeralsumerals[3836]="MMMDCCCXXXVII";	
               allNumeralsumerals[3837]="MMMDCCCXXXVIII";	
               allNumeralsumerals[3838]="MMMDCCCXXXIX";	
               allNumeralsumerals[3839]="MMMDCCCXL";	
               allNumeralsumerals[3840]="MMMDCCCXLI";	
               allNumeralsumerals[3841]="MMMDCCCXLII";	
               allNumeralsumerals[3842]="MMMDCCCXLIII";	
               allNumeralsumerals[3843]="MMMDCCCXLIV";	
               allNumeralsumerals[3844]="MMMDCCCXLV";	
               allNumeralsumerals[3845]="MMMDCCCXLVI";	
               allNumeralsumerals[3846]="MMMDCCCXLVII";	
               allNumeralsumerals[3847]="MMMDCCCXLVIII";	
               allNumeralsumerals[3848]="MMMDCCCXLIX";	
               allNumeralsumerals[3849]="MMMDCCCL";	
               allNumeralsumerals[3850]="MMMDCCCLI";	
               allNumeralsumerals[3851]="MMMDCCCLII";	
               allNumeralsumerals[3852]="MMMDCCCLIII";	
               allNumeralsumerals[3853]="MMMDCCCLIV";	
               allNumeralsumerals[3854]="MMMDCCCLV";	
               allNumeralsumerals[3855]="MMMDCCCLVI";	
               allNumeralsumerals[3856]="MMMDCCCLVII";	
               allNumeralsumerals[3857]="MMMDCCCLVIII";	
               allNumeralsumerals[3858]="MMMDCCCLIX";	
               allNumeralsumerals[3859]="MMMDCCCLX";	
               allNumeralsumerals[3860]="MMMDCCCLXI";	
               allNumeralsumerals[3861]="MMMDCCCLXII";	
               allNumeralsumerals[3862]="MMMDCCCLXIII";	
               allNumeralsumerals[3863]="MMMDCCCLXIV";	
               allNumeralsumerals[3864]="MMMDCCCLXV";	
               allNumeralsumerals[3865]="MMMDCCCLXVI";	
               allNumeralsumerals[3866]="MMMDCCCLXVII";	
               allNumeralsumerals[3867]="MMMDCCCLXVIII";	
               allNumeralsumerals[3868]="MMMDCCCLXIX";	
               allNumeralsumerals[3869]="MMMDCCCLXX";	
               allNumeralsumerals[3870]="MMMDCCCLXXI";	
               allNumeralsumerals[3871]="MMMDCCCLXXII";	
               allNumeralsumerals[3872]="MMMDCCCLXXIII";	
               allNumeralsumerals[3873]="MMMDCCCLXXIV";	
               allNumeralsumerals[3874]="MMMDCCCLXXV";	
               allNumeralsumerals[3875]="MMMDCCCLXXVI";	
               allNumeralsumerals[3876]="MMMDCCCLXXVII";	
               allNumeralsumerals[3877]="MMMDCCCLXXVIII";	
               allNumeralsumerals[3878]="MMMDCCCLXXIX";	
               allNumeralsumerals[3879]="MMMDCCCLXXX";	
               allNumeralsumerals[3880]="MMMDCCCLXXXI";	
               allNumeralsumerals[3881]="MMMDCCCLXXXII";	
               allNumeralsumerals[3882]="MMMDCCCLXXXIII";	
               allNumeralsumerals[3883]="MMMDCCCLXXXIV";	
               allNumeralsumerals[3884]="MMMDCCCLXXXV";	
               allNumeralsumerals[3885]="MMMDCCCLXXXVI";	
               allNumeralsumerals[3886]="MMMDCCCLXXXVII";	
               allNumeralsumerals[3887]="MMMDCCCLXXXVIII";	
               allNumeralsumerals[3888]="MMMDCCCLXXXIX";	
               allNumeralsumerals[3889]="MMMDCCCXC";	
               allNumeralsumerals[3890]="MMMDCCCXCI";	
               allNumeralsumerals[3891]="MMMDCCCXCII";	
               allNumeralsumerals[3892]="MMMDCCCXCIII";	
               allNumeralsumerals[3893]="MMMDCCCXCIV";	
               allNumeralsumerals[3894]="MMMDCCCXCV";	
               allNumeralsumerals[3895]="MMMDCCCXCVI";	
               allNumeralsumerals[3896]="MMMDCCCXCVII";	
               allNumeralsumerals[3897]="MMMDCCCXCVIII";	
               allNumeralsumerals[3898]="MMMDCCCXCIX";	
               allNumeralsumerals[3899]="MMMCM";	
               allNumeralsumerals[3900]="MMMCMI";	
               allNumeralsumerals[3901]="MMMCMII";	
               allNumeralsumerals[3902]="MMMCMIII";	
               allNumeralsumerals[3903]="MMMCMIV";	
               allNumeralsumerals[3904]="MMMCMV";	
               allNumeralsumerals[3905]="MMMCMVI";	
               allNumeralsumerals[3906]="MMMCMVII";	
               allNumeralsumerals[3907]="MMMCMVIII";	
               allNumeralsumerals[3908]="MMMCMIX";	
               allNumeralsumerals[3909]="MMMCMX";	
               allNumeralsumerals[3910]="MMMCMXI";	
               allNumeralsumerals[3911]="MMMCMXII";	
               allNumeralsumerals[3912]="MMMCMXIII";	
               allNumeralsumerals[3913]="MMMCMXIV";	
               allNumeralsumerals[3914]="MMMCMXV";	
               allNumeralsumerals[3915]="MMMCMXVI";	
               allNumeralsumerals[3916]="MMMCMXVII";	
               allNumeralsumerals[3917]="MMMCMXVIII";	
               allNumeralsumerals[3918]="MMMCMXIX";	
               allNumeralsumerals[3919]="MMMCMXX";	
               allNumeralsumerals[3920]="MMMCMXXI";	
               allNumeralsumerals[3921]="MMMCMXXII";	
               allNumeralsumerals[3922]="MMMCMXXIII";	
               allNumeralsumerals[3923]="MMMCMXXIV";	
               allNumeralsumerals[3924]="MMMCMXXV";	
               allNumeralsumerals[3925]="MMMCMXXVI";	
               allNumeralsumerals[3926]="MMMCMXXVII";	
               allNumeralsumerals[3927]="MMMCMXXVIII";	
               allNumeralsumerals[3928]="MMMCMXXIX";	
               allNumeralsumerals[3929]="MMMCMXXX";	
               allNumeralsumerals[3930]="MMMCMXXXI";	
               allNumeralsumerals[3931]="MMMCMXXXII";	
               allNumeralsumerals[3932]="MMMCMXXXIII";	
               allNumeralsumerals[3933]="MMMCMXXXIV";	
               allNumeralsumerals[3934]="MMMCMXXXV";	
               allNumeralsumerals[3935]="MMMCMXXXVI";	
               allNumeralsumerals[3936]="MMMCMXXXVII";	
               allNumeralsumerals[3937]="MMMCMXXXVIII";	
               allNumeralsumerals[3938]="MMMCMXXXIX";	
               allNumeralsumerals[3939]="MMMCMXL";	
               allNumeralsumerals[3940]="MMMCMXLI";	
               allNumeralsumerals[3941]="MMMCMXLII";	
               allNumeralsumerals[3942]="MMMCMXLIII";	
               allNumeralsumerals[3943]="MMMCMXLIV";	
               allNumeralsumerals[3944]="MMMCMXLV";	
               allNumeralsumerals[3945]="MMMCMXLVI";	
               allNumeralsumerals[3946]="MMMCMXLVII";	
               allNumeralsumerals[3947]="MMMCMXLVIII";	
               allNumeralsumerals[3948]="MMMCMXLIX";	
               allNumeralsumerals[3949]="MMMCML";	
               allNumeralsumerals[3950]="MMMCMLI";	
               allNumeralsumerals[3951]="MMMCMLII";	
               allNumeralsumerals[3952]="MMMCMLIII";	
               allNumeralsumerals[3953]="MMMCMLIV";	
               allNumeralsumerals[3954]="MMMCMLV";	
               allNumeralsumerals[3955]="MMMCMLVI";	
               allNumeralsumerals[3956]="MMMCMLVII";	
               allNumeralsumerals[3957]="MMMCMLVIII";	
               allNumeralsumerals[3958]="MMMCMLIX";	
               allNumeralsumerals[3959]="MMMCMLX";	
               allNumeralsumerals[3960]="MMMCMLXI";	
               allNumeralsumerals[3961]="MMMCMLXII";	
               allNumeralsumerals[3962]="MMMCMLXIII";	
               allNumeralsumerals[3963]="MMMCMLXIV";	
               allNumeralsumerals[3964]="MMMCMLXV";	
               allNumeralsumerals[3965]="MMMCMLXVI";	
               allNumeralsumerals[3966]="MMMCMLXVII";	
               allNumeralsumerals[3967]="MMMCMLXVIII";	
               allNumeralsumerals[3968]="MMMCMLXIX";	
               allNumeralsumerals[3969]="MMMCMLXX";	
               allNumeralsumerals[3970]="MMMCMLXXI";	
               allNumeralsumerals[3971]="MMMCMLXXII";	
               allNumeralsumerals[3972]="MMMCMLXXIII";	
               allNumeralsumerals[3973]="MMMCMLXXIV";	
               allNumeralsumerals[3974]="MMMCMLXXV";	
               allNumeralsumerals[3975]="MMMCMLXXVI";	
               allNumeralsumerals[3976]="MMMCMLXXVII";	
               allNumeralsumerals[3977]="MMMCMLXXVIII";	
               allNumeralsumerals[3978]="MMMCMLXXIX";	
               allNumeralsumerals[3979]="MMMCMLXXX";	
               allNumeralsumerals[3980]="MMMCMLXXXI";	
               allNumeralsumerals[3981]="MMMCMLXXXII";	
               allNumeralsumerals[3982]="MMMCMLXXXIII";	
               allNumeralsumerals[3983]="MMMCMLXXXIV";	
               allNumeralsumerals[3984]="MMMCMLXXXV";	
               allNumeralsumerals[3985]="MMMCMLXXXVI";	
               allNumeralsumerals[3986]="MMMCMLXXXVII";	
               allNumeralsumerals[3987]="MMMCMLXXXVIII";	
               allNumeralsumerals[3988]="MMMCMLXXXIX";	
               allNumeralsumerals[3989]="MMMCMXC";	
               allNumeralsumerals[3990]="MMMCMXCI";	
               allNumeralsumerals[3991]="MMMCMXCII";	
               allNumeralsumerals[3992]="MMMCMXCIII";	
               allNumeralsumerals[3993]="MMMCMXCIV";	
               allNumeralsumerals[3994]="MMMCMXCV";	
               allNumeralsumerals[3995]="MMMCMXCVI";	
               allNumeralsumerals[3996]="MMMCMXCVII";	
               allNumeralsumerals[3997]="MMMCMXCVIII";	
               allNumeralsumerals[3998]="MMMCMXCIX";	
*/
        System.out.println("Welcome to Online IDE!! Happy Coding :)");
        char[] acceptedNumerals = new char[]{'M','D','C','L','X', 'V','I'};
        //These are all accepted roman numerals
        int number; //This is set once end user specifies number numerals in their number to be inputted
        boolean noMatch=true; // this flag is used to check if the numeral entered is a valid one
        int j; //used to increment the character array containing user input of numeral
        int count=0; // this keeps track number times end user has entered a character. It can be decremented if it fails validation.
        Scanner reader=null;
        // This is used to ascertain how many digits end user wants
        //reader = new Scanner(System.in); // Reading from System.in
    
        char inputtedNumerals[];
        int [][] posValues;
            
        //for (int z=0; z<500; z++)                 //SEVERAL OPTION TO SPEED UP TEST CASES
        //for (int z=1943; z<1944; z++)             //SEVERAL OPTION TO SPEED UP TEST CASES
        //for (int z=0; z<1; z++)                   //SEVERAL OPTION TO SPEED UP TEST CASES
        //for (int z=0; z<failingNumeralToDecimal.length; z++)  //SEVERAL OPTION TO SPEED UP TEST CASES
    
        for (int z=0; z<allNumerals.length; z++)   //SEVERAL OPTION TO SPEED UP TEST CASES
        {
          //if (failingNumeralToDecimal[z]!null)   //SEVERAL OPTION TO SPEED UP TEST CASES
            if (allNumerals[z]!=null)              //SEVERAL OPTION TO SPEED UP TEST CASES
            {
                System.out.println("Enter number numerals in the number to be converted to decimal:");
        
                number=allNumerals[z].length();                   //SEVERAL OPTION TO SPEED UP TEST CASES 
                //number=failingNumeralToDecimal[z].length();     //SEVERAL OPTION TO SPEED UP TEST CASES 
        
                inputtedNumerals = new char[number]; // this creates character array with end user specified size
                posValues = new int [number][2]; // this is used to keep track of:
                // this is 2D array. 'number' simply increments with array index of the roman 
                //numeral in character array
                // the multidimensal aspect at 0 index will store: index of which numeral 
                //i.e  M is 0, D is 1 aspect at 1 index will store: decimal conversion
                // This will support later analysis.
                //all values will be set to 1 to ensure a repeat conversion is not processed;
    
                count=0;
                    
                do
                {
                    //reader = new Scanner(System.in); // Reading from System.in
                    //System.out.println("Enter roman numeral " + (count+1) + " of " + number + ":"); 
                    // end user prompted to enter roman numeral
        inputtedNumerals[count]=allNumerals[z].charAt(count);                   //SEVERAL OPTION TO SPEED UP TEST CASES 
        //inputtedNumerals[count]=failingNumeralToDecimal[z].charAt(count);     //SEVERAL OPTION TO SPEED UP TEST CASES 
        
                    count++;

                    for (j=0; j<inputtedNumerals.length;j++) 
                    // this will check each item in the inputted area against 7 roman numerals.
                    // the condition could equally be set to count for better loop efficiency if the
                    //number entered is long
                    {
                        for (int k=0; k<acceptedNumerals.length;k++) // this goes through roman numerals
                        {
                            if (inputtedNumerals[j]==acceptedNumerals[k]) // this checks to see if the roman numerals entered are valid
                            {
                                posValues[count-1][0]=k; // Variable k keeps a record of index of the roman numeral stored in acceptedNumerals
                                // This switch statement now checks 'k'validposition in hierarcy of the 7 numerals.
                                //'M','D','C','L','X', 'V','I'
                                // Depending on the roman numeral value, it will also store the decimal conversion into posValues array.
                    
                                switch(k)
                                {
                                    case 0:
                                        posValues[count-1][1]=1000;
                                        break;
                        
                                    case 1:
                                        posValues[count-1][1]=500;
                                        break;
                        
                                    case 2:
                                        posValues[count-1][1]=100;
                                        break;
                        
                                    case 3:
                                        posValues[count-1][1]=50;
                                        break;
                        
                                    case 4:
                                        posValues[count-1][1]=10;
                                        break;
                        
                                    case 5:
                                        posValues[count-1][1]=5;
                                        break;
                            
                                    case 6:
                                        posValues[count-1][1]=1;
                                        break;
                                }
                                    
                                noMatch=false; // This sets flag stating match has been found.
                                break;
                            }
                        }
            
                        // This will now give information if the user input is valid for each numeral.
                        // If found to be incorrect, the count will go back and end 
                        //user will need to enter it again.
                            
                        if (noMatch==true)
                        {
                            System.out.println("Please input a successful roman numeral: M D C L X V I");
                            count=count-1;
                            break;
                        }
                    }
                } while (count<inputtedNumerals.length); // do while loop will end once count reaches the input user for length of roman numerals.
    
                String str = String.valueOf(inputtedNumerals);
                System.out.println("This will be converted to decimal:" + str); 
                // This informs end user of the roman numerals to be converted
    
                performConversion pc = new performConversion(acceptedNumerals, inputtedNumerals,posValues,str); 
                // calls constructor in class to perform conversion
            }
        
        }
    }
}

class performConversion
{
    boolean isFullstoreThreeSubtractiveNumerals=false;
    boolean hasIV=false;
    boolean hasIX=false;
    int indexLocation=0;
    boolean isStoredIvalue=false;
    boolean isStoredJvalue=false;
    
    int tempA=0;
    int tempB=0;
    boolean FlagSet=false;
    int sumNotAdded=0;
    int rule4;
    boolean rule3Fail=false;
    char[] inputtedNumerals; // this contains numerals entered by end user
    char[] acceptedNumerals; // this contains array of all accepted numerals
    int [][] posValues; // this keeps track for the index for numeral and also its conversion into decimal
    int total;
    int sum;
    int consecutiveOccurrences;
    String numeralsToString;
    boolean correctOrder=false;
    int oneNumeral;
    int twoNumerals;
    boolean illegalSubtractive=false;
    boolean illegalFourInARowState=false;
    int temp1=0;
    boolean valueBeforeSubtractiveNotation=false;
    int runningTotal=0;
    boolean validNumber=false;
    // This is the constructor used to call the converter method.
    
    public performConversion (char[] aNumerals, char [] inputNumerals, int [][] pValues, String numeralsToString)
    {
        int pc[] = new int[pValues.length];
        this.acceptedNumerals=aNumerals;
        this.inputtedNumerals=inputNumerals;
        this.posValues=pValues;
        this.numeralsToString=numeralsToString;
        
        converter(pc); // this variable has been passed into the method since for some reason it did not pick up the variable even though scope was correct.
    }
    
    public String convertNumber(int number)
    {
        String nummberToNumeral="";
        
        switch (number)
        {
            case 1:
                nummberToNumeral="I";
                break;

            case 5:
                nummberToNumeral="V";
                break;
                            
            case 10:
                nummberToNumeral="X";
                break;

            case 50:
                nummberToNumeral="L";
                break;
                            
            case 100:
                nummberToNumeral="C";
                break;

            case 500:
                nummberToNumeral="D";
                break;
                            
            case 1000:
                nummberToNumeral="M";
                break;

            default:
            System.out.println("Do not reach here");
        }
        return nummberToNumeral+  "("+Integer.toString(number)+")"; 
    }
    
    public void converter(int [] processedConversion)
    {
        // There will be NO issues in performing conversion of a single roman numeral
        System.out.println("the length is:" + inputtedNumerals.length);
        
        if (inputtedNumerals.length<2) // This functions correctly.
        {
            System.out.println("Conversion is single:" + posValues[0][1]);
        }
        
        // ONCE ALL PRINCIPLES ARE UNDERSTOOD FOR A VALID ROMAN NUMERAL, THE CODE WILL BE IMPLEMENTED FURTHER
        System.out.println("numerals in the roman numeral:" + posValues.length);
        int valueConsecutiveOccurences[] = new int [posValues.length];
        int indexCount=0;
        // These values can only occur once in roman numeral. A counter is kept.
        int countV=0;
        int countL=0;
        int countD=0;
        int zeroIndexCount=0; // on instances, the counter has to start from zeroindex notation
        int rule4Single=0; //this keeps a total of rule 4
        int rule5=0; // this keeps total at rule 5
        int rule5total;
        boolean rule5State=false; // state is set if rule 5 is entered
        int rule6=0; // this keeps total at rule 6
        int rule6total;
        boolean rule6State=false; // state is set if rule 6 is entered
        int rule7=0; // this keeps total at rule 7
        
        int rule7total;
        boolean rule7State=false; // state is set if rule 7 is entered
        // used for
        //Rule 4: Only I, X, and C can be used as subtractive numerals.
        //There can be 6 combinations when we subtract.
        //These are IV = 5 - 1 = 4; IX = 10 - 1 = 9; XL = 50 - 10 = 40;
        // XC = 100 - 10 = 90; CD = 500 - 100 = 400; and CM = 1000 - 100 = 900
        //Another useful IMPORTANT information found on a site is that two subtractive numerals can not 
        //be adjacent such as:
        // CDCM since CM is higher however CM CD is also invalid (range is 100-900)
        // The following is invalid: IXIV even though IV is smaller than IX. This is because they are both in same range 1-9
        // In that respect, XC XL is invalid.. both notations are 10-90
        // XCIV is ok
        //{'M','D','C','L','X', 'V','I'};
        // I have partially implemented the rule here since it is too complex.
        String IV = "IV";
        String IX = "IX";
        String XL = "XL";
        String XC = "XC";
        String CD= "CD";
        String CM= "CM";
        int threeInRow=0;
        
        String [] subtractiveNumerals = new String []{IV,IX,XL,XC,CD,CM};
        int [][] subtractiveNumeralsRange = new int[6][2];
        
        subtractiveNumeralsRange[0][0] = 1; subtractiveNumeralsRange[0][1] = 4;
        subtractiveNumeralsRange[1][0] = 1; subtractiveNumeralsRange[1][1] = 9;
        subtractiveNumeralsRange[2][0] = 10; subtractiveNumeralsRange[2][1] = 40;
        subtractiveNumeralsRange[3][0] = 10; subtractiveNumeralsRange[3][1] = 90;
        subtractiveNumeralsRange[4][0] = 100; subtractiveNumeralsRange[4][1] = 400;
        subtractiveNumeralsRange[5][0] = 100; subtractiveNumeralsRange[5][1] = 900;
        
        int sum1=0;
        int total1=0;
        boolean flagError=false;
        boolean result=false;
        int total2=0;
        boolean twoSubtractiveNotations=false;
        boolean singleSubtractiveNotations=false;
        boolean IplacedIncorrect=false;
        boolean rule2State=false;
        int tempBefore=0;
        int rule2=0;
        int rule2total=0;
        boolean invalidSubtractiveNumeral=false;
        int temp=0;
        boolean VLDcheck=false;
        boolean illegalThreeInARowState=false;
        int rangeLower=0;
        int rangeUpper=0;
        String checkComplete[] = new String[subtractiveNumerals.length];
        
         //if the roman numeral was valid this array size =3 would suffice
        String []storeSubtractiveNumerals = new String[(numeralsToString.length()/2)];
        
        //-----------------------------------------
        // This has been completed outside main loop because it is processing a string to check values
        // this needs to go inside main loop. otherwise can not check the index of posValues
        
        System.out.println("In rule 4");
        
        for (int i=0; i<subtractiveNumerals.length; i++) // this is going through all 6 combos IV, IX, XL.....
        {
            System.out.println("***********************");
            //System.out.println("Which lop number i:" + i);
            
            for (int j=0; j<subtractiveNumerals.length; j++ ) // this is going through all 6 combos IV, IX, XL.....
            {
                //System.out.println("Which lop number j:" + j);
                
                // NEED MORE LOGIC TO PREVENT IT FROM COMPARING AGAINST ITSELF.
                // OTHERWISE IT WILL PREVENT SINGLE OCCURENCE OF SUBTRACTIVE NOTATION FROM BEING PROCESSED
                
                if (j==i)
                {
                    continue;
                }
                
                // this ensures that there are matches against two subtractive notations before processing
                if (numeralsToString.indexOf(subtractiveNumerals[i])!=-1 && numeralsToString.indexOf(subtractiveNumerals[j])!=-1)
                {
                    FlagSet=true;
                    twoSubtractiveNotations = true;
                    System.out.println("TWO SUBTRACTIVE NOTATIONS FOUND:");
                    System.out.println("***************************");
                    // this checks if subtractive notation lower value appears at index before higher subtractive notation

                    if (numeralsToString.indexOf(subtractiveNumerals[i]) < numeralsToString.indexOf(subtractiveNumerals[j]))
                    {
                        checkComplete[i]=subtractiveNumerals[i]+subtractiveNumerals[j];
                        
                        if(checkComplete[i].indexOf(subtractiveNumerals[j])==-1)
                        {
                            // THERE IS ISSUE IN THIS PART OF CODE:
                            // FOR INSTANCE IF IT DETECTS M CM IV It will first find circumstance ok since IV is in i loop and CM is in j loop
                            //and hence since index of IV will appear higher, it will decide not to proceed with this.
                            // HOWEVER as the i loop progresses it will become CM in i loop.. It will then find IV in the j loop.
                            // In this instance CM will appear lower in the index notation... hence the loop will validate as true and proceed.
                            // Need a way to stop this from occuring.
                            
                            System.out.println(numeralsToString + " is invalid");
                            System.out.println("Incorrect roman numeral. " + subtractiveNumerals[i] + " portion should be before: " + subtractiveNumerals[j]);
                            System.out.println("A group of numerals written in subtractive notation, of lower value, " + subtractiveNumerals[i] + " ( =" + subtractiveNumeralsRange[i][1]+"), cannot precede another group of numerals written in subtractive notation," + subtractiveNumerals[j] + " ( =" + subtractiveNumeralsRange[j][1]+").");
                            illegalSubtractive=true;

                            invalidSubtractiveNumeral=true;
                        }
                    }
                    // this now checks the subtractive notations in correct order
                    if (numeralsToString.indexOf(subtractiveNumerals[i]) > numeralsToString.indexOf(subtractiveNumerals[j]))
                    {
                        //Both these subtractive numerals appear. a case of now checking if range is same
                        System.out.println(subtractiveNumerals[i]);
                        
                        //I want to refrain from using collection, since my entire exercise has been without
                        //need to check if the notation is not already present, add it.
                        //based on screen outputs, need to compare it against j variable...
                        
                        //The logic can be broken down as follows
                        //if the subtractiveNumerals i
                        
                        //the subtractiveNumeralRanges that are outputted screen are as a result of j and ivariable
                        //the i variable deals with 
                        //String [] subtractiveNumerals = new String []{IV,IX,XL,XC,CD,CM};
                        
                        for (int v=0; v<storeSubtractiveNumerals.length;v++)
                        {
                            //need a nested for loop
                            if (storeSubtractiveNumerals[v]==subtractiveNumerals[j])
                            {
                                isStoredJvalue = true;
                                
                            }
                            if (storeSubtractiveNumerals[v]==subtractiveNumerals[i])
                            {
                                isStoredIvalue = true;
                            }
                        }
                        
                        if (!isStoredIvalue)
                        {
                            storeSubtractiveNumerals[indexLocation]=subtractiveNumerals[i];
                            indexLocation++;
                        }
                            
                        try
                        {
                            if (!isStoredJvalue)
                            {
                                storeSubtractiveNumerals[indexLocation]=subtractiveNumerals[j];
                                indexLocation++;
                            }
                        }
                        catch (ArrayIndexOutOfBoundsException e)
                        {
                        }
                        //we now check if it has three 
                        if (indexLocation==3)
                        {
                            isFullstoreThreeSubtractiveNumerals=true;
                        }
                                        
                        System.out.println("This should print out start of the range:" + subtractiveNumeralsRange[i][0]);
                        System.out.println("This should print out end of the range:" + subtractiveNumeralsRange[i][1]);
                        System.out.println(subtractiveNumerals[j]);
                        System.out.println("This should print out start of the range:" + subtractiveNumeralsRange[j][0]);
                        System.out.println("This should print out end of the range:" + subtractiveNumeralsRange[j][1]);

                        if (subtractiveNumeralsRange[i][0] == subtractiveNumeralsRange[j][0]) 
                        // these subtractive notations are in the same range
                        {
                            System.out.println(subtractiveNumerals[i] + " is in the range: " + subtractiveNumeralsRange[i][0] + " - " + subtractiveNumeralsRange[i][1]);
                            System.out.println(subtractiveNumerals[j] + " is in the range: " + subtractiveNumeralsRange[j][0] + " - " + subtractiveNumeralsRange[j][1]);
                            System.out.println("They are both in the same range");
                            processedConversion[numeralsToString.indexOf(subtractiveNumerals[i])]=1;
                            temp = numeralsToString.indexOf(subtractiveNumerals[i]) + 1;
                            processedConversion[temp]=1;
                            System.out.println("REACH HERE!!!!!!!!!!");
                            processedConversion[numeralsToString.indexOf(subtractiveNumerals[j])]=1;
                            temp = numeralsToString.indexOf(subtractiveNumerals[j]) + 1;
                            processedConversion[temp]=1;
                            rule4=0;
                        }
                        
                        if (subtractiveNumeralsRange[i][0] != subtractiveNumeralsRange[j][0]) 
                        // this ensures that subtractive notations are not in the same range
                        {
                            if(processedConversion[numeralsToString.indexOf(subtractiveNumerals[i])]!=1 
                            && processedConversion[numeralsToString.indexOf(subtractiveNumerals[j])]!=1 )
                            {
                                if (numeralsToString.indexOf(subtractiveNumerals[i])!=-1 
                                && numeralsToString.indexOf(subtractiveNumerals[j])!=-1)
                                {
                                    System.out.println("correct order");
                                    correctOrder=true;
                                    System.out.println(subtractiveNumerals[i] + " " + numeralsToString.indexOf(subtractiveNumerals[i]));
                                    System.out.println(subtractiveNumerals[j] + " " + numeralsToString.indexOf(subtractiveNumerals[j]));
                                    //CAREFUL THESE BEEN COMMENTED
                                    processedConversion[numeralsToString.indexOf(subtractiveNumerals[i])]=1;
                                    temp = numeralsToString.indexOf(subtractiveNumerals[i]) + 1;
                                    processedConversion[temp]=1;
                                    processedConversion[numeralsToString.indexOf(subtractiveNumerals[j])]=1;
                                    temp = numeralsToString.indexOf(subtractiveNumerals[j]) + 1;
                                    processedConversion[temp]=1;
                                    
                                    switch (subtractiveNumerals[i])
                                    {
                                        case "IV":
                                            runningTotal = runningTotal + 4;
                                            break;
                                        
                                        case "IX":
                                            runningTotal = runningTotal + 9;
                                            break;

                                        case "XL":
                                            runningTotal = runningTotal + 40;
                                            break;
                                        
                                        case "XC":
                                            runningTotal = runningTotal + 90;
                                            break;
                                        
                                        case "CD":
                                            runningTotal = runningTotal + 400;
                                            break;
                                        
                                        case "CM":
                                            runningTotal = runningTotal + 900;
                                            break;
                                        
                                        default:
                                        invalidSubtractiveNumeral = true;
                                    }
                                    
                                    switch (subtractiveNumerals[j])
                                    {
                                        case "IV":
                                            runningTotal = runningTotal + 4;
                                            break;
                                        
                                        case "IX":
                                            runningTotal = runningTotal + 9;
                                            break;
                                        
                                        case "XL":
                                            runningTotal = runningTotal + 40;
                                            break;
                                        
                                        case "XC":
                                            runningTotal = runningTotal + 90;
                                            break;

                                        case "CD":
                                            runningTotal = runningTotal + 400;
                                            break;
                                        
                                        case "CM":
                                            runningTotal = runningTotal + 900;
                                            break;

                                        default:
                                        invalidSubtractiveNumeral = true;
                                    }
                                }
                            }
                        }
                    }
                }
            }
            // this confirms if a match is found. -1 value is no match. 0 is a match.
            System.out.println(subtractiveNumerals[i] + " " + numeralsToString.indexOf(subtractiveNumerals[i]));
            
            boolean correctOrder=false;
            System.out.println("total after rule4:" + rule4);
            // this now is just simply going through all subtractive notations if there is no other existing
            // this can not run if the above circumstance is true.
            //System.out.println("Was not expecting this loop to enter with " + subtractiveNumerals[i] + subtractiveNumerals[j]);
            System.out.println(twoSubtractiveNotations);
            
            if (!twoSubtractiveNotations)
            {
                System.out.println("What is I:" + i);
                System.out.println("BE HERE!!!!!!!!!!!!!!!!!!!!!!!!!!!");

                if (numeralsToString.indexOf(subtractiveNumerals[i])!=-1) // This double checks that there is only one subtractive notation
                {
                    System.out.println("BE HERE AGAIN!!!!!!!!!!!!!!!!!!!!!!!!!!!");
                    //if (processedConversion[numeralsToString.indexOf(subtractiveNumerals[i])]!=1)
                    //{
                    System.out.println("BE HERE AGAIN2!!!!!!!!!!!!!!!!!!!!!!!!!!!");
                    // **This is now checking if X for instance is occuring in the numerals and 
                    //also subtractive notations
                    // ** for instance XCX
                    //the code has not referenced range at all.. this will cause code to fail in 
                    //scenarios such as MCM where it is VALID
                    
                    System.out.println("ASDASDBGDFSDGFDGFDG");
                    System.out.println(subtractiveNumerals[i]);
                    runningTotal = runningTotal + subtractiveNumeralsRange[i][1];
                    
                    if (numeralsToString.indexOf(subtractiveNumerals[i])!=-1)
                    // if it finds a match of subtractive notation in the numeral consisting of 
                    //3 or more numerals
                    {
                        System.out.println(numeralsToString.indexOf(subtractiveNumerals[i]));
                        // this ensures if numeral appears after notation, it gets position 2
                        if (numeralsToString.indexOf(subtractiveNumerals[i])>=0 
                        && numeralsToString.indexOf(subtractiveNumerals[i]) + 2<=posValues.length-1)
                        {
                            tempA = numeralsToString.indexOf(subtractiveNumerals[i])+2;
                            System.out.println("NUMERAL AFTER NOTATION!");
                        }
                        // at this point we know that subtractive notations are legitimate, 
                        //hence can perform extra step
                        // this ensures if numeral appears before notation, it gets position one place before
                        // it should only also go here lets say for example value 
                        //before notation is bigger than range of the subtractive notation
                        // for instance MIV it should not go there. Reason is this would 
                        //ensure for such a numeral as MIVC it compares forward as oppose backware
                        // unsure if this logic will hold.. perhaps better to do
                        //if (numeralsToString.indexOf(subtractiveNumerals[i])!=0
                        
                        if (numeralsToString.indexOf(subtractiveNumerals[i])!=0 
                        /*&& posValues[temp][1]>subtractiveNumeralsRange[i][1] */ )
                        {
                            tempB = numeralsToString.indexOf(subtractiveNumerals[i])-1;
                            valueBeforeSubtractiveNotation = true;
                            tempBefore= numeralsToString.indexOf(subtractiveNumerals[i]);
                            System.out.println("NUMERAL BEFORE NOTATION!");
                        }
                        
                        //temp = numeralsToString.indexOf(subtractiveNumerals[i]) + 2; 
                        // sets temp to allow comparison 1st with 3rd char
                        System.out.println("vcbvbnm,,");
                        System.out.println(posValues.length-1);
                        System.out.println(numeralsToString.indexOf(subtractiveNumerals[i]));
                        // NEED MORE LOGIC HERE TO CHANGE HOW TEMP IS GENERATED
                        // FOR INSTANCE WITH XCM temp is one places before than location of index notation
                        //HOWEVER WITH MCM the M is one place before subtractive notation
                        //So need to check in both directions
                        System.out.println("first");
                    }
                    
                    // this is length of two inputtedNumerals. It has no bearing on above.
                    if (numeralsToString.indexOf(subtractiveNumerals[i])!=-1 && posValues.length==2) 
                    //this should allow normal flow of app?
                    {
                        temp = numeralsToString.indexOf(subtractiveNumerals[i]) + 1;
                        System.out.println("second");
                    }
                    
                    System.out.println("temp is currrentl: " + temp);
                    System.out.println("WWWWWWWWWWWWWWWWWWWWWWWWWWWW");
                    System.out.println("What is I:" + i);
                    
                    if (temp<=posValues.length && posValues.length>2 )
                    {
                    // this ensures that there is a value in numeral to compare against
                    // it is set to minumum 3 numerals
                    //This checks XCX first char of subtractivenotation X against 2 positions in main array
                    //System.out.println("B:" + numeralsToString.charAt(temp-1));
                    //now need to know the range of the subtractive notation and also the non notation
                    // which is either before or after subtractive notation
                    // VERY IMPORTANT
                    //since the code does not include array holding the numeral and its decimal value, switch statement
                    // will need to be used. posValues was declared two dimensional holding.
                    //Also since something like XC, the index will be split in two and lower and upper range will be outputted.
                    //range for subtractive notation
                        
                    switch (subtractiveNumerals[i].charAt(0))
                    {
                        case 'I':
                            rangeLower=1;
                            break;

                        case 'V':
                            rangeLower=5;
                            break;
                            
                        case 'X':
                            rangeLower=10;
                            break;

                        case 'L':
                            rangeLower=50;
                            break;

                        case 'C':
                            rangeLower=100;
                            break;
                            
                        case 'D':
                            rangeLower=500;
                            break;

                        case 'M':
                            rangeLower=1000;
                            break;
                            
                        default:
                        System.out.println("Do not reach here");
                        }
                        
                        switch (subtractiveNumerals[i].charAt(1))
                        {
                            case 'I':
                                rangeUpper=1;
                                break;

                            case 'V':
                                rangeUpper=5;
                                break;
                            
                            case 'X':
                                rangeUpper=10;
                                break;

                            case 'L':
                                rangeUpper=50;
                                break;
                            
                            case 'C':
                                rangeUpper=100;
                                break;

                            case 'D':
                                rangeUpper=500;
                                break;
                            
                            case 'M':
                                rangeUpper=1000;
                                break;

                            default:
                            System.out.println("Do not reach here");
                        }
                        
                        // This is now the example for XC X X=10 range for XC (is 10-90 )
                        // So evaluating that value at location is not greater or equal to 10
                        //if (tempBefore>0) // this is showing there is check backwards
                        //examples would be CCM
                        
                        if (/*subtractiveNumerals[i].charAt(0) == numeralsToString.charAt(tempBefore) &&*/ 
                        posValues[tempB][1] <(subtractiveNumeralsRange[i][1]) && tempBefore>tempB)
                        {
                            System.out.println("2. A numeral (a letter) of lower value" 
                            + numeralsToString.charAt(tempB) + "(=" + posValues[tempB][1] + ")" 
                            + "cannot precede a group of numerals written in subtractive notation,");
                            System.out.println(subtractiveNumerals[i] + "( ="+ subtractiveNumeralsRange[i][1] +").");
                            //C CM: A numeral (a letter) of lower value, C ( = 100), cannot precede a group of
                            //numerals written in subtractive notation, CM ( = 900).
                            illegalSubtractive=true;
                        }
                        
                        //temp is set +2 from index of start subtractive notation
                        if (posValues[tempA][1] >=subtractiveNumeralsRange[i][0] 
                        && posValues[tempA][1] <=subtractiveNumeralsRange[i][1] && tempA>tempBefore) /*&& posValues.length>2*/
                        {
                            System.out.println("%*%*%*");
                            System.out.println("1. The numeral " + numeralsToString.charAt(tempA) + "(=" + posValues[tempA][1] + ") " + " cannot be placed after a group of numerals written in subtractive notation: " + subtractiveNumerals[i]);
                            System.out.println("Of the same range: " + "( = " + subtractiveNumeralsRange[i][0] + "-" + subtractiveNumeralsRange[i][1] + ").");
                            //The numeral X ( = 10) cannot be placed after a group of numerals written in subtractive notation, XC ( = 90),
                            //of the same range value (10 - 90)
                            illegalSubtractive=true;
                        }
                        
                        // this is now using scenario such as C CM where C (100) appears before CM(subtractive numeral) -range (100-900)
                        // C can not be lower than 900(upper range). It can be equal for scenarios such as MCM (this is valid 1900).
                        // This is using IV C as an EXAMPLE
                        //1 has been subtracted from posValues since it is zero index based
                        //This in the if loop will ensure instances such as M CM are not trapped
                        //However C CM is trapped
                        // RangeUpper!= posValues[temp-1][1]
                        //using real example IVC that ends up in here
                        //this rule has to work in tempB and tempA
                        //example is MIVC since it will pass on MIV section but fail on IVC section
                        // this is looking at perspective of M IV C (examining IV in relation to C)
                        
                        if (subtractiveNumeralsRange[i][1] < posValues[tempA][1] && tempBefore<tempA) /*&& posValues.length>2*/
                        {
                            System.out.println("%*%*%*");
                            System.out.println("3ver1. A group of numerals written in subtractive notation, of lower value,");
                            System.out.println(subtractiveNumerals[i] + " ( = " + (rangeUpper-rangeLower) + "), cannot precede a numeral of larger value, " + numeralsToString.charAt(tempA) 
                            + "( = "+posValues[tempA][1]+").");
                            //IV C: A group of numerals written in subtractive notation, of lower value, IV ( = 4),
                            //cannot precede a numeral of larger value, C ( = 100)
                            //System.out.println("1. The numeral " + numeralsToString.charAt(temp) + "(=" + posValues[temp][1] + ") " + " cannot be placed after a group of numerals written in subtractive notation: " + subtractiveNumerals[i]);
                            //System.out.println("Of the same range: " + "( = " + rangeLower + "-" + rangeUpper + ").");
                            
                            illegalSubtractive=true;
                        }
                        
                        // this is looking at perspective of M IV C (examining IV in relation to M)
                        if (subtractiveNumeralsRange[i][1] > posValues[tempB][1] && tempBefore>tempB) 
                        /*&& posValues.length>2*/
                        {
                            System.out.println("%*%*%*");
                            System.out.println("3ver2. A group of numerals written in subtractive notation, of higher value,");
                            System.out.println(subtractiveNumerals[i] + " ( = " + 
                            (rangeUpper-rangeLower) + "), cannot proceed a numeral of lower value, " + 
                            numeralsToString.charAt(tempB) + "( = "+posValues[tempB][1]+".");
                            //IV C: A group of numerals written in subtractive notation, of lower value, IV ( = 4),
                            //cannot precede a numeral of larger value, C ( = 100)
                            
                            illegalSubtractive=true;
                        }
                        // THIS CODE IS REQUIRED FOR EXAMPLE SUCH AS IVC
                        //CAREFUL
                        // this is now checking if such a sequence exists CMM. This is not legal since
                        //subtractive notation CM (900) is less than M (1000).
                        switch (subtractiveNumerals[i])
                        {
                            case "IV":
                                rule4Single = rule4Single + 4;
                                break;
                            
                            case "IX":
                                rule4Single = rule4Single + 9;
                                break;
                            
                            case "XL":
                                rule4Single = rule4Single + 40;
                                break;
                            
                            case "XC":
                                rule4Single = rule4Single + 90;
                                break;
                            
                            case "CD":
                                rule4Single = rule4Single + 400;
                                break;
                            
                            case "CM":
                                rule4Single = rule4Single + 900;
                                break;
                            
                            default:
                                invalidSubtractiveNumeral = true;   
                        }
                        
                        twoSubtractiveNotations=false;
                        singleSubtractiveNotations=true;
                    }
                    
                    processedConversion[numeralsToString.indexOf(subtractiveNumerals[i])]=1;
                    temp = numeralsToString.indexOf(subtractiveNumerals[i]) + 1;
                    processedConversion[temp]=1;
                }
            }
        }
        
        // MAIN PROGRAM EXECUTION
        //this will examine decimal number stored. If identical numerals in consecutive it will add to the total.
        for (int m=1; m<posValues.length; m++) // this is starting not at zero index since compared to previous value
        {
            if (processedConversion[m]!=1)
            {
                //posValues[m][0]=numeral position //[m][1]=decimal
                // This section is best completed examining string of the character array of inputted numerals.
                // Rule 3: The letters V, L, and D are not repeated.
                // There are acceptedNumerals[1], acceptedNumerals[3], acceptedNumerals[5]
                // posValues[m][0] stores information relevant
                //{'M','D','C','L','X', 'V','I'};
                
                System.out.println("Going into rule 3");
                if (!VLDcheck)
                {
                    for (indexCount=0; indexCount<posValues.length; indexCount++)
                    {
                        System.out.println("value of indexCount: " + indexCount);
                        System.out.println(posValues.length);
                        
                        if (posValues[indexCount][1]==5)
                        {
                            countV++;
                            System.out.println("found a V");
                        }
                        
                        if (posValues[indexCount][1]==50)
                        {
                            countL++;
                        }
                        
                        if (posValues[indexCount][1]==500)
                        {
                            countD++;
                        }
                    }
                }
                
                VLDcheck=true;
                
                //Rule 1: When certain numerals are repeated, the number represented by them is their sum. 
                //For example, II = 1 + 1 = 2, or XX = 10 + 10 = 20, or, XXX = 10 + 10 + 10 = 30.
                
                if (posValues[m][1]==posValues[m-1][1]) 
                // this is comparing decimal number for numeral against previous one
                {
                    // Rule 2: It is to be noted that no Roman numerals can come together more than 3 times. For example, we cannot write 40 as XXXX
                    // This needs to work from ZeroIndex not m
                    System.out.println("starting rule 1");
                    //if (m!=(posValues.length-2) && posValues.length>3) // what does this rule mean, first part
                    
                    if (posValues.length>3)
                    // m is current position in the numerals array
                    {
                        // has to be 3 advancing numerals to check if 4 together
                        if (m<=posValues.length-3) // can not check for three in row if last element in array
                        {
                            //if (temp1+2<=posValues.length)
                            //{  // checking for three in row same
                            if (temp1+3<=posValues.length)
                            {
                                for (int counter=0;counter<=posValues.length-3;counter=counter+4)
                                {
                                    System.out.println("Value of coutner: " + counter);
                                    if (posValues[temp1][1]==posValues[temp1+1][1] && 
                                    posValues[temp1][1]==posValues[temp1+2][1] && 
                                    posValues[temp1][1]==posValues[temp1+3][1])
                                    {
                                        System.out.println("Four in a row occurrence of: ");
                                        illegalFourInARowState=true;
                                    
                                        System.out.println("********************************************************");
                                        System.out.println("This is temp1 99:" + temp1);
                                        System.out.println("********************************************************");

                                        threeInRow = (posValues[temp1][1] * 3) +threeInRow;
                                        temp1 = temp1+4;

                                        System.out.println("********************************************************");
                                        System.out.println("This is new temp1 :" + temp1);
                                        System.out.println("********************************************************");

                                        if (temp1+3>posValues.length)
                                        {
                                            break;
                                        }
                                    }
                                }
                            }
                        }
                    }
                    
                    if (!illegalFourInARowState)
                    {
                        System.out.println("Amit Amlani");
                        
                        if (processedConversion[m]!=1 && processedConversion[m-1]!=1)
                        {
                            rule2total=posValues[m][1]+posValues[m-1][1];
                            rule2=rule2+rule2total; // they will be totalled if same
                            System.out.println("So far sum:" + rule2);
                            rule2State=true;
                        }
                        
                        valueConsecutiveOccurences[m] = posValues[m][1]; //storing decimal value in array.
                        consecutiveOccurrences=consecutiveOccurrences+2;
                        // valueConsecutiveOccurences[m] this keeps a track of the roman numeral that has been repeating
                        //num++;
                        // this checks if there has already been consecutive occurence of the numeral adjacently
                        //[m][0]=numeral position //[m][1]=decimal
                        if (m!=(posValues.length-1))
                        {
                            if (valueConsecutiveOccurences[m]==posValues[m+1][1] && processedConversion[m+1]!=1)
                            {
                                System.out.println("does this happen45");
                                rule2=rule2-(rule2total/2);
                                rule2total=0;
                            }
                        }
                        
                        // NEED TO VERIFY THIS
                        if (illegalThreeInARowState)
                        {
                            rule2=0;
                        }
                    }
                }
                
                //Rule 5: When a Roman numeral is placed after another Roman numeral of greater value,
                //the result is the sum of the numerals. For example, VIII = 5 + 1 + 1 + 1 = 8, or,
                //XV = 10 + 5 = 15,
                // This appears to be where the code has determined if numerals are in some decent order
                System.out.println("What is value of zeroindexcount: " + zeroIndexCount);
                
                if (posValues[m][1]<posValues[m-1][1])
                {
                    System.out.println("How many times does it enter in this section");
                    System.out.println("What is m: " + posValues[m][1]);
                    System.out.println("What is m-1: " + posValues[m-1][1]);
                    //System.out.println("This is value marked with 1: " + posValues[processedConversion[numeralsToString.indexOf(subtractiveNumerals[m])][1]]);
                    //********************Need to be careful here of making it already set to 1

//System.out.println("This is value marked with 1: " + posValues[processedConversion[numeralsToString.indexOf(subtractiveNumerals[m])-1][1]]);
                    if (processedConversion[m-1]!=1)
                    {
                        rule5total = posValues[m][1] + posValues[m-1][1];
                        rule5 = rule5total + rule5;
                        System.out.println("*******RULE5******: " + rule5);
                        rule5total = 0;
                        rule5State=true;
                        //processedConversion[m]=1;
                        //UNSURE
                        //processedConversion[m-1]=1;
                        if (posValues.length==2)
                        {
                            //processedConversion[m-1]=1;
                        }
                        
                        if (m!=1) // if not the first numeral
                        {
                            if (rule4Single!=0)
                            {
                                System.out.println("!!!!!!!!!!!!!!!!!!!!!!!");
                                //rule5=rule4Single + posValues[m][1];
                                rule5=posValues[m][1] + posValues[m-1][1];
                            }
                        }
                    }
                }
                
                System.out.println("at rule 6: " + total1);
                //Rule 6: When a Roman numeral is placed before another Roman numeral of greater value,
                //the result is the difference between the numerals. For example, IV = 5 - 1 = 4, or, XL = 50 - 10 = 40,
                //or XC = 100 - 10 = 90
                
                System.out.println("Rule 6");
                System.out.println("Must WORK!!!!");
                System.out.println(zeroIndexCount);
                System.out.println(posValues[zeroIndexCount][1]);
                
                if (posValues[zeroIndexCount][1]<posValues[zeroIndexCount+1][1])
                {
                    if (posValues[zeroIndexCount][1]==1 && posValues[zeroIndexCount+1][1]>10)
                    {
                        System.out.println("Roman Numeral I(1) "  
                        + "("+"numeral index:" + zeroIndexCount + ")" + " can not precede: " 
                        + convertNumber(posValues[zeroIndexCount+1][1]));
                        IplacedIncorrect=true;
                    }
                    
                    if (posValues[zeroIndexCount][1]==10 && posValues[zeroIndexCount+1][1]>100)
                    {
                        System.out.println("Roman Numeral X(10) "  + "("+"numeral index:" 
                        + zeroIndexCount + ")" + " can not precede: " + convertNumber(posValues[zeroIndexCount+1][1]));
                        IplacedIncorrect=true;
                    }
                    
                    if (posValues[zeroIndexCount][1]==50 && posValues[zeroIndexCount+1][1]>=50)
                    {
                        System.out.println("Roman Numeral L(50) "  + "("+"numeral index:" 
                        + zeroIndexCount + ")" + " can not precede: " + convertNumber(posValues[zeroIndexCount+1][1]));
                    }
                    
                    if (posValues[zeroIndexCount][1]==5 && posValues[zeroIndexCount+1][1]>posValues[zeroIndexCount][1])
                    {
                        System.out.println("Roman Numeral V(5) "  + "("+"numeral index:" + zeroIndexCount + ")" 
                        + " can not precede: " + convertNumber(posValues[zeroIndexCount+1][1]));
                        IplacedIncorrect=true;
                    }
                    
                    if (posValues[zeroIndexCount][1]!=5 && posValues[zeroIndexCount][1]!=50 
                    && posValues[zeroIndexCount][1]!=500 && !IplacedIncorrect)
                    {
                        processedConversion[zeroIndexCount]=1;
                        rule6total = posValues[zeroIndexCount+1][1] - posValues[zeroIndexCount][1];
                        rule6 = rule6total + rule6;
                        rule6total = 0;
                        rule6State=true;
                    }
                    else
                    { 
                        System.out.println("Illegal subtractive notation found with V, D or L");
                        rule5=0;
                        illegalSubtractive=true;
                    }
                }
                
                // Rule 7: When a Roman numeral of a smaller value is placed between two numerals of greater value,
                //it is subtracted from the numeral on its right. For example, XIV = 10 + (5 - 1) = 14,
                //or, XIX = 10 + (10 - 1) = 19
                System.out.println("Rule 7");
                // rule 7 will not stall by rule 4 since the the right hand side character in rule 4 
                //is always bigger.
                if (m!=posValues.length && posValues.length>2) // a numeral can not 
                //be in middle if it is the last in the numeral array
                // it also can not be in middle if the first numeral. Hence using m index notation.
                {
                    if (processedConversion[m]!=1)
                    {
                        //START FROM HERE AND TEST XI
                        if (m!=posValues.length-1)
                        {
                            if (posValues[m][1]<posValues[m-1][1] && posValues[m][1]<posValues[m+1][1])
                            {
                                //System.out.println("what " + (m-1));
                                //processedConversion[m]=1;
                                //System.out.println("This is value marked with 1: " 
                                //+ posValues[processedConversion[numeralsToString.indexOf(subtractiveNumerals[m])][1]]);
                                //processedConversion[m+1]=1;
                                //System.out.println("This is value marked with 1: " 
                                //+ posValues[processedConversion[numeralsToString.indexOf(subtractiveNumerals[m+1])][1]]);
                                rule7total = posValues[m+1][1] - posValues[m][1];
                                rule7 = rule7total + rule7;
                                rule7total = 0;
                                System.out.println("total at rule 7:" + rule7);
                            }
                        }
                    }
                }
                
                zeroIndexCount++;
                temp1++;
                System.out.println("This is overall total:" + (total1));
            }
        }
        
        // THIS WILL NOW CHECK IF EACH NUMBER HAS OR HAS NOT BEEN PROCESSED IN CHECKING SO far
        int counter=0;
        int unTotal=0;
        
        for (int c: processedConversion)
        {
            System.out.println("This is value of c: " + c);
            System.out.println("This is the numeral value: " + posValues[counter][1]);
            
            if (c!=1)
            {
                unTotal = posValues[counter][1] + unTotal;
                System.out.println("This has not been added to the total: " + unTotal);
                System.out.println("This is the position: " + counter);
            }
            
            counter++;
        }
        
        // this is part of rule 3
        if (countD>1 || countL>1 || countV>1)
        {
            System.out.println("Invalid roman numeral. Numeral V or D or L has occured more than once");
            rule3Fail = true;
        }

        if (inputtedNumerals.length==2) // checking number with 2 numerals
        {
            if (posValues[0][0]==posValues[1][0] && rule3Fail==false) 
            // if values identical straight forward conversion
            {
                twoNumerals = posValues[0][1] + posValues[1][1];
                System.out.println("Conversion is double:" + (twoNumerals));
                //System.out.println("XL: " + posValues[0][1]);
                processedConversion[0]=1;
                processedConversion[1]=1;
                //System.out.println("This is value marked with 1: " + posValues[1][1]);
            }
        }
        
        // THIS WILL NOW CHECK IF EACH NUMBER HAS OR HAS NOT BEEN PROCESSED IN CHECKING SO far
        // it is not picking up MM or II
        // This suggests that they have been marked as processedconversion
        if (!illegalSubtractive && !IplacedIncorrect && !rule3Fail && !illegalFourInARowState)
        {
            //if (runningTotal>0 && unTotal==0 && FlagSet==true)
            //{
             //   runningTotal = runningTotal / 2;
            //}
            
            //I believe if there are three subtractive notations, it has to contain a IV or IX, 
            //so I am not checking this
            for (String n: storeSubtractiveNumerals)
            {
                System.out.println("THE NUMERAL: " + n);
            }
            
            System.out.println("************************************ORIGINAL UNTOTAL: " + unTotal);
            
            if (isFullstoreThreeSubtractiveNumerals)
            {
                //ALL are based on three rules (rule6, rule7, rule2)
                
                if (rule6!=0 && rule7!=0 && rule2==0)
                {
                    //unTotal = (rule5-100) + rule6;   //this was also found to be valid, but I broke away from this
                    unTotal = (unTotal-100);
                    
                    System.out.println("THIS CONDITION1");
                    System.out.println("WHAT IS RUNNING TOTAL: " + runningTotal);
                    System.out.println("WHAT IS untotal: " + unTotal);
                }
                //test case for decimal 444 or 1944 
                if (rule6!=0 && rule7==0 && rule2==0)
                {
                    unTotal = rule6;
                    System.out.println("THIS CONDITION2");
                }
                //test case for Decimal 2949
                if (rule6!=0 && rule7!=0 && rule2!=0)
                {
                    unTotal = rule2 + rule6;   //rule7 can also work
                    System.out.println("THIS CONDITION3");
                }
            }
            // I feel I need to check the alternating numeral here...
            //I have presented above all the validations that fail for a numeral above...
            //This is the final point before a numeral such as below is passed as VALID
            //when we know its incorrect
            /*
            
            ********************* GRAND TOTAL*************
            NOTE: Code is designed for up to MMMM=4000 due to notation changes henceforth
            MMM(C)CDLXIV is a VALID roman numeral
            runningTotal:404
            Not added total:3160
            **TOTAL: 3564
            ***********************************
            */
            
            System.out.println("----------------The numeral: " + numeralsToString);
            int counterNonAdjacentNumerals=0;
            int valueNumeral=0;
            int[] valueNumerals = new int[2];
            boolean hasFilledNoneAdjacentNumerals=false;
            boolean hasInvalidNonAdjacent=false;
            
            //since we are checking two indexes ahead
            //the loop has to terminate three indexes from end
            for (int n=0; n<(numeralsToString.length()-2);n++)
            {
                //variable used so that comparison is made once it retrieves two numerals and conversion 
                //to decimal
                counterNonAdjacentNumerals=0;
                
                //we want to run the switch statement for non-adjacent characters
                //it will run twice total for each inputtedNumerals
                for (int y=n;y<(n+3);y=y+2)
                {
                    counterNonAdjacentNumerals++;
                    
                    System.out.println("Retrieving numeral: " + numeralsToString.charAt(y));
                    
                    //We could have also performed reference against acceptedNumerals array
                    //However using swithc allow us to get the actual numerical value of the numeral.
                    //More relevant screen output
                    
                    switch (numeralsToString.charAt(y))
                    {
                        case 'I':
                        valueNumeral=1;
                        break;

                        case 'V':
                        valueNumeral=5;
                        break;
                            
                        case 'X':
                        valueNumeral=10;
                        break;

                        case 'L':
                        valueNumeral=50;
                        break;
                            
                        case 'C':
                        valueNumeral=100;
                        break;

                        case 'D':
                        valueNumeral=500;
                        break;
                            
                        case 'M':
                        valueNumeral=1000;
                        break;

                        default:
                        System.out.println("Do not reach here");
                    }
                    
                    //it stores the first numeral in the array
                    if (counterNonAdjacentNumerals==1)
                    {
                        valueNumerals[0]=valueNumeral;
                    }
                    //it stores second numeral in array
                    else if (counterNonAdjacentNumerals==2)
                    {
                        valueNumerals[1]=valueNumeral;
                    }
                    
                    //at this point, we can to check if
                    //valueNumerals[0] is less than or equal to valueNumerals[1]
                
                    //System.out.println("VALS0: " + valueNumerals[0]);
                    //System.out.println("VALS1: " + valueNumerals[1]);
                    //System.out.println(counterNonAdjacentNumerals);
                
                    if (counterNonAdjacentNumerals==2)
                    {
                        //it is ok if the left most numeral is same or greater.  
                        //We know MCM is fine for instance or XVI
                        if (valueNumerals[0]>=valueNumerals[1])
                        {
                            System.out.println("1HERE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n");
                        }
                
                        //anything else is not allowed such as CXD
                        else
                        {
                            System.out.println("INVALID NUMERAL: " + numeralsToString.charAt(n) + 
                            " = " + valueNumerals[0] + "(index: " + y +")"
                            + " is less than: " + numeralsToString.charAt(n+2) + " = " +  
                            valueNumerals[1] + "(index: " + (y+2) +")");
                            
                            hasInvalidNonAdjacent = true;
                            //validNumber=false;
                            System.out.println("2HERE1!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n");
                        }
                    }
                }
                //reset the variable
                valueNumerals = new int[2];
                hasFilledNoneAdjacentNumerals=false;
                counterNonAdjacentNumerals=0;
            
                //we had to create another boolean and could not set validNumber above.
                //This is because there might be subsequent numerals which pass above condition
            }
            
            //This is only circumstance we know the numeral is valid.
            //When it has not had any violations in the above new code
            if (!hasInvalidNonAdjacent)
            {
                validNumber=true;
            }
            
            //variable has been reset now due to other numeralsToString which might be 
            //called as part of the for loop at top of code.
            hasInvalidNonAdjacent=false;
            
            System.out.println("\n\n********************* GRAND TOTAL*************");
            System.out.println("NOTE: Code is designed for up to MMMM=4000 due to notation changes henceforth");
            System.out.println(numeralsToString + " is a VALID roman numeral");
            System.out.println("runningTotal:" + runningTotal);
            System.out.println("Not added total:" + unTotal );
            System.out.println("**TOTAL: " + (runningTotal+unTotal));
            System.out.println("**********************************");
            //System.exit(0);
        }
        
        if (!validNumber)
        {
            System.out.println("\n\n********************* GRAND TOTAL*************");
            System.out.println(numeralsToString + " is an INVALID roman numeral");
            System.out.println("Address the issues outputted for a valid Roman numeral");
            System.out.println("**********************************");
        }
        
        System.out.println("\n\n\n********************************************");
        System.out.println("OLD PROGRAMME LOGIC");
        System.out.println("\n********************************************");
        System.out.println(numeralsToString + " is the roman numeral");
        System.out.println("number of Vs: " + countV);
        System.out.println("number of Ls: " + countL);
        System.out.println("number of Ds: " + countD);
        System.out.println("rule4: " + rule4);
        System.out.println("rule2: " + rule2);
        System.out.println("rule4Single: " + rule4Single);
        System.out.println("rule5: " + rule5);
        System.out.println("rule6: " + rule6);
        System.out.println("rule7: " + rule7);
        System.out.println("threeinarow:" + threeInRow);
        System.out.println("Untotal:" + unTotal);
        
        if (rule3Fail)
        {
            System.out.println("More than 2 instances of V, L and D:");
            System.out.println("D: " + countD);
            System.out.println("V: " + countV);
            System.out.println("L: " + countL);
            //System.exit(0);
        }
        
        //if (illegalSubtractive && IplacedIncorrect && rule3Fail && illegalFourInARowState)
        if (!validNumber)
        {
            System.out.println(numeralsToString + " is NOT a VALID roman numeral");
            System.out.println("Address the issues outputted for a valid Roman numeral");
        }
        
        boolean hasProcessLegacyTotal=false;
        
        if (!illegalSubtractive && !IplacedIncorrect && !illegalThreeInARowState && !rule3Fail && validNumber)
        {
            if (unTotal!=0 && rule6!=0 && rule5!=0 && rule4Single!=0 && rule2!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**total1_temp: " + (rule4Single + unTotal));
                hasProcessLegacyTotal=true;
            }

            if (unTotal!=0 && rule6!=0 && rule5!=0 && rule4Single!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**total1: " + (rule4Single + unTotal + rule5));
                hasProcessLegacyTotal=true;
            }
            
            if (unTotal!=0 && rule6==0 && rule5==0 && threeInRow!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**total2_temp: " + (rule4Single + unTotal + threeInRow));
                hasProcessLegacyTotal=true;
            }
            
            if (rule4Single!=0 && unTotal!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**total2: " + (rule4Single + unTotal));
                hasProcessLegacyTotal=true;
            }
            
            if (rule4Single!=0 && unTotal!=0 && rule2!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**total4_temp: " + (rule4Single + unTotal));
                hasProcessLegacyTotal=true;
            }
            
            if (rule4Single==0 && rule2!=0 && rule5!=0 && rule4!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**total4: " + (rule4 + rule2 + rule5));
                hasProcessLegacyTotal=true;
            }
            
            if (rule4Single==0 && rule2!=0 && rule5!=0 && rule4!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**total4: " + (rule4 + rule2 + rule5));
                hasProcessLegacyTotal=true;
            }
            
            if (unTotal==0 && rule5==0 && rule2==0 && rule4==0 && threeInRow!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total5: " + (threeInRow));
                hasProcessLegacyTotal=true;
            }
            
            if (unTotal!=0 && rule5!=0 && rule6!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total6: " + (unTotal+rule6));
                hasProcessLegacyTotal=true;
            }
            
            if (unTotal!=0 && rule5!=0 &&rule2!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total6: " + (unTotal));
                hasProcessLegacyTotal=true;
            }
            
            if (unTotal!=0 && rule5==0 && rule2==0 && rule4==0 && threeInRow!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total7: " + (unTotal+threeInRow));
                hasProcessLegacyTotal=true;
            }
            
            if (rule2!=0 && rule4Single==0 && rule5==0 && rule6==0 && threeInRow!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total8: " + (threeInRow+rule2));
                hasProcessLegacyTotal=true;
            }
            
            if (rule2!=0 && rule4Single==0 && rule5==0 && rule6==0 && unTotal!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total9: " + (rule2));
                hasProcessLegacyTotal=true;
            }
            
            if (rule2!=0 && rule4Single==0 && rule5==0 && rule6==0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total10: " + rule2);
                hasProcessLegacyTotal=true;
            }
            
            if (rule4Single!=0 && rule5!=0 && rule6!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total11: " + (rule4Single+rule5));
                hasProcessLegacyTotal=true;
            }
            
            if (unTotal!=0 && rule5==0 && rule2==0 && rule4==0 && rule4Single==0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total12: " + (unTotal));
                hasProcessLegacyTotal=true;
            }
            
            if (unTotal!=0 && rule4!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total13: " + (unTotal + rule4));
                hasProcessLegacyTotal=true;
            }
            
            
            if (rule5!=0 && rule6!=0 && unTotal!=0 && !hasProcessLegacyTotal)
            {
                System.out.println(numeralsToString + "is an invalid roman numeral");
                System.out.println(numeralsToString + "INVESTIGATE CODE OR CONDITIONAL IF LOOPS FOR TOTAL IF ENTER OCCURS");
                hasProcessLegacyTotal=true;
            }
            
            if (rule6!=0 && rule5!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total14: " + (rule6+rule5));
                hasProcessLegacyTotal=true;
            }
            
            if (rule6!=0 && rule2!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total 15: " + (rule6+rule2));
                hasProcessLegacyTotal=true;
            }
            
            if (rule5!=0 && rule2!=0 && threeInRow==0 && rule4Single!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total16: " + (rule5+rule2));
                hasProcessLegacyTotal=true;
            }
            
            if (rule5!=0 && rule2!=0 && threeInRow!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total17: " + (rule5+rule2));
                hasProcessLegacyTotal=true;
            }
            
            if (rule5!=0 && rule2!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total18: " + (rule5+rule2));
                hasProcessLegacyTotal=true;
            }
            
            if (rule5!=0 && unTotal!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total19: " + (rule5+unTotal));
                hasProcessLegacyTotal=true;
            }
            
            if (rule5!=0 && rule4!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total20: " + (rule5 + rule4));
                hasProcessLegacyTotal=true;
            }
            
            if (rule5!=0 && threeInRow!=0 && rule4Single!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total21: " + (rule5+threeInRow));
                hasProcessLegacyTotal=true;
            }
            
            if (rule5!=0 && threeInRow!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total22: " + (rule5+threeInRow));
                hasProcessLegacyTotal=true;
            }
            
            if (rule5!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total23: " + (rule5));
                hasProcessLegacyTotal=true;
            }
            
            if (rule2!=0 && unTotal!=0 && rule4Single!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total24: " + (rule2 + unTotal + rule4Single));
                hasProcessLegacyTotal=true;
            }
            
            if (rule2!=0 && rule4Single!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total25: " + (rule2 + rule4Single));
                hasProcessLegacyTotal=true;
            }
            
            if (rule2!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total26: " + (twoNumerals));
                hasProcessLegacyTotal=true;
            }

            if (rule4Single!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total27 is: " + (unTotal + rule4Single));
                hasProcessLegacyTotal=true;
            }
            
            if (rule4!=0 && !hasProcessLegacyTotal)
            {
                System.out.println("**Total28 is: " + (rule4));
                hasProcessLegacyTotal=true;
            }
        }
        hasProcessLegacyTotal=false;
        
        //System.out.println("this is the overall sum: " + (rule2+rule4Single+rule5+rule6+rule7));
        // System.out.println("this is the overall sum: " + (rule5 + rule2));
        // This is the best logic found on the internet for roman numeral conversion.
        // Logic will be coded one by one and see if it works overall
        /*
It is necessary for us to remember the rules for reading and writing Roman numbers in order to avoid mistakes. Here is a list of the basic rules for Roman numerals.
Rule 1: When certain numerals are repeated, the number represented by them is their sum. For example, II = 1 + 1 = 2, or XX = 10 + 10 = 20, or, XXX = 10 + 10 + 10 = 30.
Rule 2: It is to be noted that no Roman numerals can come together more than 3 times. For example, we cannot write 40 as XXXX
Rule 3: The letters V, L, and D are not repeated.
Rule 4: Only I, X, and C can be used as subtractive numerals. There can be 6 combinations when we subtract. These are IV = 5 - 1 = 4; IX = 10 - 1 = 9; XL = 50 - 10 = 40; XC = 100 - 10 = 90; CD = 500 - 100 = 400; and CM = 1000 - 100 = 900
Rule 5: When a Roman numeral is placed after another Roman numeral of greater value, the result is the sum of the numerals. For example, VIII = 5 + 1 + 1 + 1 = 8, or, XV = 10 + 5 = 15,
Rule 6: When a Roman numeral is placed before another Roman numeral of greater value, the result is the difference between the numerals. For example, IV = 5 - 1 = 4, or, XL = 50 - 10 = 40, or XC = 100 - 10 = 90
Rule 7: When a Roman numeral of a smaller value is placed between two numerals of greater value, it is subtracted from the numeral on its right. For example, XIV = 10 + (5 - 1) = 14, or, XIX = 10 + (10 - 1) = 19
Rule 8: To multiply a number by a factor of 1000 a bar is placed over it.
Rule 9: Roman numerals do not follow any place value system.
Rule 10: There is no Roman numeral for zero (0).
*/
    }
}