1 /*
   2  * Copyright (c) 1996, 2018, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 /*
  27  */
  28 
  29 /*
  30  * (C) Copyright Taligent, Inc. 1996, 1997 - All Rights Reserved
  31  * (C) Copyright IBM Corp. 1996 - 1999 - All Rights Reserved
  32  *
  33  * The original version of this source code and documentation
  34  * is copyrighted and owned by Taligent, Inc., a wholly-owned
  35  * subsidiary of IBM. These materials are provided under terms
  36  * of a License Agreement between Taligent and Sun. This technology
  37  * is protected by multiple US and International patents.
  38  *
  39  * This notice and attribution to Taligent may not be removed.
  40  * Taligent is a registered trademark of Taligent, Inc.
  41  *
  42  */
  43 
  44 /*
  45  * COPYRIGHT AND PERMISSION NOTICE
  46  *
  47  * Copyright (C) 1991-2012 Unicode, Inc. All rights reserved. Distributed under
  48  * the Terms of Use in http://www.unicode.org/copyright.html.
  49  *
  50  * Permission is hereby granted, free of charge, to any person obtaining a copy
  51  * of the Unicode data files and any associated documentation (the "Data
  52  * Files") or Unicode software and any associated documentation (the
  53  * "Software") to deal in the Data Files or Software without restriction,
  54  * including without limitation the rights to use, copy, modify, merge,
  55  * publish, distribute, and/or sell copies of the Data Files or Software, and
  56  * to permit persons to whom the Data Files or Software are furnished to do so,
  57  * provided that (a) the above copyright notice(s) and this permission notice
  58  * appear with all copies of the Data Files or Software, (b) both the above
  59  * copyright notice(s) and this permission notice appear in associated
  60  * documentation, and (c) there is clear notice in each modified Data File or
  61  * in the Software as well as in the documentation associated with the Data
  62  * File(s) or Software that the data or software has been modified.
  63  *
  64  * THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
  65  * KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  66  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
  67  * THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS
  68  * INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR
  69  * CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
  70  * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  71  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
  72  * OF THE DATA FILES OR SOFTWARE.
  73  *
  74  * Except as contained in this notice, the name of a copyright holder shall not
  75  * be used in advertising or otherwise to promote the sale, use or other
  76  * dealings in these Data Files or Software without prior written authorization
  77  * of the copyright holder.
  78  */
  79 
  80 package sun.text.resources;
  81 
  82 import java.util.List;
  83 import sun.util.resources.ParallelListResourceBundle;
  84 
  85 public class FormatData extends ParallelListResourceBundle {
  86     /**
  87      * Overrides ListResourceBundle
  88      */
  89     @Override
  90     protected final Object[][] getContents() {
  91         // Julian calendar era strings
  92         final String[] julianEras = {
  93             "BC",
  94             "AD"
  95         };
  96 
  97         // Thai Buddhist calendar era strings
  98         final String[] buddhistEras = {
  99             "BC",     // BC
 100             "B.E."    // Buddhist Era
 101         };
 102 
 103         // Japanese imperial calendar era abbreviations
 104         final String[] japaneseEraAbbrs = {
 105             "",
 106             "M",
 107             "T",
 108             "S",
 109             "H",
 110             "N", // NewEra
 111         };
 112 
 113         // Japanese imperial calendar era strings
 114         final String[] japaneseEras = {
 115             "",
 116             "Meiji",
 117             "Taisho",
 118             "Showa",
 119             "Heisei",
 120             "NewEra", // NewEra
 121         };
 122 
 123         return new Object[][] {
 124             { "MonthNames",
 125                 new String[] {
 126                     "January", // january
 127                     "February", // february
 128                     "March", // march
 129                     "April", // april
 130                     "May", // may
 131                     "June", // june
 132                     "July", // july
 133                     "August", // august
 134                     "September", // september
 135                     "October", // october
 136                     "November", // november
 137                     "December", // december
 138                     "" // month 13 if applicable
 139                 }
 140             },
 141             { "MonthAbbreviations",
 142                 new String[] {
 143                     "Jan", // abb january
 144                     "Feb", // abb february
 145                     "Mar", // abb march
 146                     "Apr", // abb april
 147                     "May", // abb may
 148                     "Jun", // abb june
 149                     "Jul", // abb july
 150                     "Aug", // abb august
 151                     "Sep", // abb september
 152                     "Oct", // abb october
 153                     "Nov", // abb november
 154                     "Dec", // abb december
 155                     "" // abb month 13 if applicable
 156                 }
 157             },
 158             { "MonthNarrows",
 159                 new String[] {
 160                     "1",
 161                     "2",
 162                     "3",
 163                     "4",
 164                     "5",
 165                     "6",
 166                     "7",
 167                     "8",
 168                     "9",
 169                     "10",
 170                     "11",
 171                     "12",
 172                     "",
 173                 }
 174             },
 175             { "DayNames",
 176                 new String[] {
 177                     "Sunday", // Sunday
 178                     "Monday", // Monday
 179                     "Tuesday", // Tuesday
 180                     "Wednesday", // Wednesday
 181                     "Thursday", // Thursday
 182                     "Friday", // Friday
 183                     "Saturday" // Saturday
 184                 }
 185             },
 186             { "DayAbbreviations",
 187                 new String[] {
 188                     "Sun", // abb Sunday
 189                     "Mon", // abb Monday
 190                     "Tue", // abb Tuesday
 191                     "Wed", // abb Wednesday
 192                     "Thu", // abb Thursday
 193                     "Fri", // abb Friday
 194                     "Sat" // abb Saturday
 195                 }
 196             },
 197             { "DayNarrows",
 198                 new String[] {
 199                     "S",
 200                     "M",
 201                     "T",
 202                     "W",
 203                     "T",
 204                     "F",
 205                     "S",
 206                 }
 207             },
 208             { "AmPmMarkers",
 209                 new String[] {
 210                     "AM", // am marker
 211                     "PM" // pm marker
 212                 }
 213             },
 214             { "narrow.AmPmMarkers",
 215                 new String[] {
 216                     "a", // am marker
 217                     "p"  // pm marker
 218                 }
 219             },
 220             { "Eras",
 221                 julianEras },
 222             { "short.Eras",
 223                 julianEras },
 224             { "narrow.Eras",
 225                 new String[] {
 226                     "B",
 227                     "A",
 228                 }
 229             },
 230             { "buddhist.Eras",
 231               buddhistEras
 232             },
 233             { "buddhist.short.Eras",
 234               buddhistEras
 235             },
 236             { "buddhist.narrow.Eras",
 237               buddhistEras
 238             },
 239             { "japanese.Eras",
 240                 japaneseEras },
 241             { "japanese.short.Eras",
 242                 japaneseEraAbbrs
 243             },
 244             { "japanese.narrow.Eras",
 245                 japaneseEraAbbrs
 246             },
 247             { "japanese.FirstYear",
 248                 new String[] { // Japanese imperial calendar year name
 249                     // empty in English
 250                 }
 251             },
 252             { "NumberPatterns",
 253                 new String[] {
 254                     "#,##0.###;-#,##0.###", // decimal pattern
 255                     "\u00a4 #,##0.00;-\u00a4 #,##0.00", // currency pattern
 256                     "#,##0%" // percent pattern
 257                 }
 258             },
 259             { "DefaultNumberingSystem", "" },
 260             { "NumberElements",
 261                 new String[] {
 262                     ".", // decimal separator
 263                     ",", // group (thousands) separator
 264                     ";", // list separator
 265                     "%", // percent sign
 266                     "0", // native 0 digit
 267                     "#", // pattern digit
 268                     "-", // minus sign
 269                     "E", // exponential
 270                     "\u2030", // per mille
 271                     "\u221e", // infinity
 272                     "\ufffd" // NaN
 273                 }
 274             },
 275             { "arab.NumberElements",
 276                 new String[] {
 277                     "\u066b",
 278                     "\u066c",
 279                     "\u061b",
 280                     "\u066a",
 281                     "\u0660",
 282                     "#",
 283                     "-",
 284                     "\u0627\u0633",
 285                     "\u0609",
 286                     "\u221e",
 287                     "NaN",
 288                 }
 289             },
 290             { "arabext.NumberElements",
 291                 new String[] {
 292                     "\u066b",
 293                     "\u066c",
 294                     "\u061b",
 295                     "\u066a",
 296                     "\u06f0",
 297                     "#",
 298                     "-",
 299                     "\u00d7\u06f1\u06f0^",
 300                     "\u0609",
 301                     "\u221e",
 302                     "NaN",
 303                 }
 304             },
 305             { "bali.NumberElements",
 306                 new String[] {
 307                     ".",
 308                     ",",
 309                     ";",
 310                     "%",
 311                     "\u1b50",
 312                     "#",
 313                     "-",
 314                     "E",
 315                     "\u2030",
 316                     "\u221e",
 317                     "NaN",
 318                 }
 319             },
 320             { "beng.NumberElements",
 321                 new String[] {
 322                     ".",
 323                     ",",
 324                     ";",
 325                     "%",
 326                     "\u09e6",
 327                     "#",
 328                     "-",
 329                     "E",
 330                     "\u2030",
 331                     "\u221e",
 332                     "NaN",
 333                 }
 334             },
 335             { "cham.NumberElements",
 336                 new String[] {
 337                     ".",
 338                     ",",
 339                     ";",
 340                     "%",
 341                     "\uaa50",
 342                     "#",
 343                     "-",
 344                     "E",
 345                     "\u2030",
 346                     "\u221e",
 347                     "NaN",
 348                 }
 349             },
 350             { "deva.NumberElements",
 351                 new String[] {
 352                     ".",
 353                     ",",
 354                     ";",
 355                     "%",
 356                     "\u0966",
 357                     "#",
 358                     "-",
 359                     "E",
 360                     "\u2030",
 361                     "\u221e",
 362                     "NaN",
 363                 }
 364             },
 365             { "fullwide.NumberElements",
 366                 new String[] {
 367                     ".",
 368                     ",",
 369                     ";",
 370                     "%",
 371                     "\uff10",
 372                     "#",
 373                     "-",
 374                     "E",
 375                     "\u2030",
 376                     "\u221e",
 377                     "NaN",
 378                 }
 379             },
 380             { "gujr.NumberElements",
 381                 new String[] {
 382                     ".",
 383                     ",",
 384                     ";",
 385                     "%",
 386                     "\u0ae6",
 387                     "#",
 388                     "-",
 389                     "E",
 390                     "\u2030",
 391                     "\u221e",
 392                     "NaN",
 393                 }
 394             },
 395             { "guru.NumberElements",
 396                 new String[] {
 397                     ".",
 398                     ",",
 399                     ";",
 400                     "%",
 401                     "\u0a66",
 402                     "#",
 403                     "-",
 404                     "E",
 405                     "\u2030",
 406                     "\u221e",
 407                     "NaN",
 408                 }
 409             },
 410             { "java.NumberElements",
 411                 new String[] {
 412                     ".",
 413                     ",",
 414                     ";",
 415                     "%",
 416                     "\ua9d0",
 417                     "#",
 418                     "-",
 419                     "E",
 420                     "\u2030",
 421                     "\u221e",
 422                     "NaN",
 423                 }
 424             },
 425             { "kali.NumberElements",
 426                 new String[] {
 427                     ".",
 428                     ",",
 429                     ";",
 430                     "%",
 431                     "\ua900",
 432                     "#",
 433                     "-",
 434                     "E",
 435                     "\u2030",
 436                     "\u221e",
 437                     "NaN",
 438                 }
 439             },
 440             { "khmr.NumberElements",
 441                 new String[] {
 442                     ".",
 443                     ",",
 444                     ";",
 445                     "%",
 446                     "\u17e0",
 447                     "#",
 448                     "-",
 449                     "E",
 450                     "\u2030",
 451                     "\u221e",
 452                     "NaN",
 453                 }
 454             },
 455             { "knda.NumberElements",
 456                 new String[] {
 457                     ".",
 458                     ",",
 459                     ";",
 460                     "%",
 461                     "\u0ce6",
 462                     "#",
 463                     "-",
 464                     "E",
 465                     "\u2030",
 466                     "\u221e",
 467                     "NaN",
 468                 }
 469             },
 470             { "laoo.NumberElements",
 471                 new String[] {
 472                     ".",
 473                     ",",
 474                     ";",
 475                     "%",
 476                     "\u0ed0",
 477                     "#",
 478                     "-",
 479                     "E",
 480                     "\u2030",
 481                     "\u221e",
 482                     "NaN",
 483                 }
 484             },
 485             { "lana.NumberElements",
 486                 new String[] {
 487                     ".",
 488                     ",",
 489                     ";",
 490                     "%",
 491                     "\u1a80",
 492                     "#",
 493                     "-",
 494                     "E",
 495                     "\u2030",
 496                     "\u221e",
 497                     "NaN",
 498                 }
 499             },
 500             { "lanatham.NumberElements",
 501                 new String[] {
 502                     ".",
 503                     ",",
 504                     ";",
 505                     "%",
 506                     "\u1a90",
 507                     "#",
 508                     "-",
 509                     "E",
 510                     "\u2030",
 511                     "\u221e",
 512                     "NaN",
 513                 }
 514             },
 515             { "latn.NumberElements",
 516                 new String[] {
 517                     ".", // decimal separator
 518                     ",", // group (thousands) separator
 519                     ";", // list separator
 520                     "%", // percent sign
 521                     "0", // native 0 digit
 522                     "#", // pattern digit
 523                     "-", // minus sign
 524                     "E", // exponential
 525                     "\u2030", // per mille
 526                     "\u221e", // infinity
 527                     "\ufffd" // NaN
 528                 }
 529             },
 530             { "lepc.NumberElements",
 531                 new String[] {
 532                     ".",
 533                     ",",
 534                     ";",
 535                     "%",
 536                     "\u1c40",
 537                     "#",
 538                     "-",
 539                     "E",
 540                     "\u2030",
 541                     "\u221e",
 542                     "NaN",
 543                 }
 544             },
 545             { "limb.NumberElements",
 546                 new String[] {
 547                     ".",
 548                     ",",
 549                     ";",
 550                     "%",
 551                     "\u1946",
 552                     "#",
 553                     "-",
 554                     "E",
 555                     "\u2030",
 556                     "\u221e",
 557                     "NaN",
 558                 }
 559             },
 560             { "mlym.NumberElements",
 561                 new String[] {
 562                     ".",
 563                     ",",
 564                     ";",
 565                     "%",
 566                     "\u0d66",
 567                     "#",
 568                     "-",
 569                     "E",
 570                     "\u2030",
 571                     "\u221e",
 572                     "NaN",
 573                 }
 574             },
 575             { "mong.NumberElements",
 576                 new String[] {
 577                     ".",
 578                     ",",
 579                     ";",
 580                     "%",
 581                     "\u1810",
 582                     "#",
 583                     "-",
 584                     "E",
 585                     "\u2030",
 586                     "\u221e",
 587                     "NaN",
 588                 }
 589             },
 590             { "mtei.NumberElements",
 591                 new String[] {
 592                     ".",
 593                     ",",
 594                     ";",
 595                     "%",
 596                     "\uabf0",
 597                     "#",
 598                     "-",
 599                     "E",
 600                     "\u2030",
 601                     "\u221e",
 602                     "NaN",
 603                 }
 604             },
 605             { "mymr.NumberElements",
 606                 new String[] {
 607                     ".",
 608                     ",",
 609                     ";",
 610                     "%",
 611                     "\u1040",
 612                     "#",
 613                     "-",
 614                     "E",
 615                     "\u2030",
 616                     "\u221e",
 617                     "NaN",
 618                 }
 619             },
 620             { "mymrshan.NumberElements",
 621                 new String[] {
 622                     ".",
 623                     ",",
 624                     ";",
 625                     "%",
 626                     "\u1090",
 627                     "#",
 628                     "-",
 629                     "E",
 630                     "\u2030",
 631                     "\u221e",
 632                     "NaN",
 633                 }
 634             },
 635             { "nkoo.NumberElements",
 636                 new String[] {
 637                     ".",
 638                     ",",
 639                     ";",
 640                     "%",
 641                     "\u07c0",
 642                     "#",
 643                     "-",
 644                     "E",
 645                     "\u2030",
 646                     "\u221e",
 647                     "NaN",
 648                 }
 649             },
 650             { "olck.NumberElements",
 651                 new String[] {
 652                     ".",
 653                     ",",
 654                     ";",
 655                     "%",
 656                     "\u1c50",
 657                     "#",
 658                     "-",
 659                     "E",
 660                     "\u2030",
 661                     "\u221e",
 662                     "NaN",
 663                 }
 664             },
 665             { "orya.NumberElements",
 666                 new String[] {
 667                     ".",
 668                     ",",
 669                     ";",
 670                     "%",
 671                     "\u0b66",
 672                     "#",
 673                     "-",
 674                     "E",
 675                     "\u2030",
 676                     "\u221e",
 677                     "NaN",
 678                 }
 679             },
 680             { "saur.NumberElements",
 681                 new String[] {
 682                     ".",
 683                     ",",
 684                     ";",
 685                     "%",
 686                     "\ua8d0",
 687                     "#",
 688                     "-",
 689                     "E",
 690                     "\u2030",
 691                     "\u221e",
 692                     "NaN",
 693                 }
 694             },
 695             { "sund.NumberElements",
 696                 new String[] {
 697                     ".",
 698                     ",",
 699                     ";",
 700                     "%",
 701                     "\u1bb0",
 702                     "#",
 703                     "-",
 704                     "E",
 705                     "\u2030",
 706                     "\u221e",
 707                     "NaN",
 708                 }
 709             },
 710             { "talu.NumberElements",
 711                 new String[] {
 712                     ".",
 713                     ",",
 714                     ";",
 715                     "%",
 716                     "\u19d0",
 717                     "#",
 718                     "-",
 719                     "E",
 720                     "\u2030",
 721                     "\u221e",
 722                     "NaN",
 723                 }
 724             },
 725             { "tamldec.NumberElements",
 726                 new String[] {
 727                     ".",
 728                     ",",
 729                     ";",
 730                     "%",
 731                     "\u0be6",
 732                     "#",
 733                     "-",
 734                     "E",
 735                     "\u2030",
 736                     "\u221e",
 737                     "NaN",
 738                 }
 739             },
 740             { "telu.NumberElements",
 741                 new String[] {
 742                     ".",
 743                     ",",
 744                     ";",
 745                     "%",
 746                     "\u0c66",
 747                     "#",
 748                     "-",
 749                     "E",
 750                     "\u2030",
 751                     "\u221e",
 752                     "NaN",
 753                 }
 754             },
 755             { "thai.NumberElements",
 756                 new String[] {
 757                     ".", // decimal separator
 758                     ",", // group (thousands) separator
 759                     ";", // list separator
 760                     "%", // percent sign
 761                     "\u0E50", // native 0 digit
 762                     "#", // pattern digit
 763                     "-", // minus sign
 764                     "E", // exponential
 765                     "\u2030", // per mille
 766                     "\u221e", // infinity
 767                     "\ufffd" // NaN
 768                 }
 769             },
 770             { "tibt.NumberElements",
 771                 new String[] {
 772                     ".",
 773                     ",",
 774                     ";",
 775                     "%",
 776                     "\u0f20",
 777                     "#",
 778                     "-",
 779                     "E",
 780                     "\u2030",
 781                     "\u221e",
 782                     "NaN",
 783                 }
 784             },
 785             { "vaii.NumberElements",
 786                 new String[] {
 787                     ".",
 788                     ",",
 789                     ";",
 790                     "%",
 791                     "\ua620",
 792                     "#",
 793                     "-",
 794                     "E",
 795                     "\u2030",
 796                     "\u221e",
 797                     "NaN",
 798                 }
 799             },
 800             { "short.CompactNumberPatterns",
 801                 List.of(
 802                     "",
 803                     "",
 804                     "",
 805                     "0K",
 806                     "00K",
 807                     "000K",
 808                     "0M",
 809                     "00M",
 810                     "000M",
 811                     "0B",
 812                     "00B",
 813                     "000B",
 814                     "0T",
 815                     "00T",
 816                     "000T"
 817                 )
 818             },
 819             { "long.CompactNumberPatterns",
 820                 List.of (
 821                     "",
 822                     "",
 823                     "",
 824                     "0 thousand",
 825                     "00 thousand",
 826                     "000 thousand",
 827                     "0 million",
 828                     "00 million",
 829                     "000 million",
 830                     "0 billion",
 831                     "00 billion",
 832                     "000 billion",
 833                     "0 trillion",
 834                     "00 trillion",
 835                     "000 trillion"
 836                 )
 837             },
 838             { "TimePatterns",
 839                 new String[] {
 840                     "h:mm:ss a z",        // full time pattern
 841                     "h:mm:ss a z",        // long time pattern
 842                     "h:mm:ss a",          // medium time pattern
 843                     "h:mm a",             // short time pattern
 844                 }
 845             },
 846             { "DatePatterns",
 847                 new String[] {
 848                     "EEEE, MMMM d, yyyy", // full date pattern
 849                     "MMMM d, yyyy",       // long date pattern
 850                     "MMM d, yyyy",        // medium date pattern
 851                     "M/d/yy",             // short date pattern
 852                 }
 853             },
 854             { "DateTimePatterns",
 855                 new String[] {
 856                     "{1} {0}"             // date-time pattern
 857                 }
 858             },
 859             { "buddhist.TimePatterns",
 860                 new String[] {
 861                     "H:mm:ss z",          // full time pattern
 862                     "H:mm:ss z",          // long time pattern
 863                     "H:mm:ss",            // medium time pattern
 864                     "H:mm",               // short time pattern
 865                 }
 866             },
 867             { "buddhist.DatePatterns",
 868                 new String[] {
 869                     "EEEE d MMMM G yyyy", // full date pattern
 870                     "d MMMM yyyy",        // long date pattern
 871                     "d MMM yyyy",         // medium date pattern
 872                     "d/M/yyyy",           // short date pattern
 873                 }
 874             },
 875             { "buddhist.DateTimePatterns",
 876                 new String[] {
 877                     "{1}, {0}"            // date-time pattern
 878                 }
 879             },
 880             { "japanese.TimePatterns",
 881                 new String[] {
 882                     "h:mm:ss a z",             // full time pattern
 883                     "h:mm:ss a z",             // long time pattern
 884                     "h:mm:ss a",               // medium time pattern
 885                     "h:mm a",                  // short time pattern
 886                 }
 887             },
 888             { "japanese.DatePatterns",
 889                 new String[] {
 890                     "GGGG yyyy MMMM d (EEEE)", // full date pattern
 891                     "GGGG yyyy MMMM d",        // long date pattern
 892                     "GGGG yyyy MMM d",         // medium date pattern
 893                     "Gy.MM.dd",                // short date pattern
 894                 }
 895             },
 896             { "japanese.DateTimePatterns",
 897                 new String[] {
 898                     "{1} {0}"                  // date-time pattern
 899                 }
 900             },
 901             { "DateTimePatternChars", "GyMdkHmsSEDFwWahKzZ" },
 902         };
 903     }
 904 }