

'use strict';
{
  const globals = this;
  const django = globals.django || (globals.django = {});

  
  django.pluralidx = function(n) {
    const v = 0;
    if (typeof v === 'boolean') {
      return v ? 1 : 0;
    } else {
      return v;
    }
  };
  

  /* gettext library */

  django.catalog = django.catalog || {};
  
  const newcatalog = {
    " is not available in your current language": " \u6ca1\u6709\u60a8\u7684\u8bed\u8a00\u7248\u672c",
    "%(sel)s of %(cnt)s selected": [
      "\u9009\u4e2d\u4e86 %(cnt)s \u4e2a\u4e2d\u7684 %(sel)s \u4e2a"
    ],
    "%s Contract matches your search": [
      "%s \u5408\u540c\u7b26\u5408\u60a8\u7684\u641c\u5bfb"
    ],
    "%s Contracts match your search": "%s \u5408\u540c\u7b26\u5408\u60a8\u7684\u641c\u5bfb",
    "%s allegation against related project": [
      "%s\u9879\u6307\u63a7\u9488\u5bf9\u6709\u5173\u9879\u76ee"
    ],
    "%s allegation directly against this company": [
      "%s\u9879\u6307\u63a7\u9488\u5bf9\u6b64\u516c\u53f8"
    ],
    "%s allegation directly against this project": [
      "%s\u9879\u6307\u63a7\u9488\u5bf9\u6b64\u9879\u76ee"
    ],
    "%s project in tracker": [
      "%s\u9879\u76ee\u5728\u8ffd\u8e64\u5668"
    ],
    "%s result was found for this company on Contracts": [
      "\u627e\u5230%s\u7b14\u4e0e\u6b64\u516c\u53f8\u76f8\u5173\u5408\u540c\u7684\u7ed3\u679c"
    ],
    "%s results": "%s\u7ed3\u679c",
    "%s results were found for this company on Contracts": [
      "\u627e\u5230%s\u9879\u4e0e\u6b64\u516c\u53f8\u76f8\u5173\u5408\u540c\u7684\u7ed3\u679c"
    ],
    "6 a.m.": "\u4e0a\u53486\u70b9",
    "6 p.m.": "\u4e0b\u53486\u70b9",
    "AND operator": "\u548c\u8fd0\u7b97\u7b26",
    "Accept all": "\u5168\u90e8\u63a5\u53d7",
    "Add a comment": "\u6dfb\u52a0\u4e00\u4e2a\u8bc4\u8bba",
    "Against related companies": "\u9488\u5bf9\u6709\u5173\u516c\u53f8",
    "Against related projects": "\u9488\u5bf9\u6709\u5173\u9879\u76ee",
    "Against this company": "\u9488\u5bf9\u6b64\u516c\u53f8",
    "Against this project": "\u9488\u5bf9\u6b64\u9879\u76ee",
    "Allegation": "\u6307\u63a7",
    "Allegation Pages": "\u6307\u63a7\u9875\u9762",
    "Allegations": "\u6307\u63a7",
    "Alt text": "\u66ff\u4ee3\u6587\u672c",
    "Analytics cookie": "\u5206\u6790 cookie",
    "April": "\u56db\u6708",
    "Are you sure?": "\u4f60\u786e\u5b9a\u5417\uff1f",
    "August": "\u516b\u6708",
    "Available %s": "\u53ef\u7528 %s",
    "Available languages": "\u73b0\u6709\u7684\u8bed\u8a00\u7248\u672c",
    "Broken link": "\u65e0\u6548\u94fe\u63a5",
    "Cancel": "\u53d6\u6d88",
    "Character count:": "\u5b57\u7b26\u6570:",
    "Choose": "\u9009\u62e9",
    "Choose a Date": "\u9009\u62e9\u4e00\u4e2a\u65e5\u671f",
    "Choose a Time": "\u9009\u62e9\u4e00\u4e2a\u65f6\u95f4",
    "Choose a time": "\u9009\u62e9\u4e00\u4e2a\u65f6\u95f4",
    "Choose all": "\u5168\u9009",
    "Chosen %s": "\u9009\u4e2d\u7684 %s",
    "Clear all filters": "\u6e05\u9664\u6240\u6709\u7b5b\u9009",
    "Click Here": "\u70b9\u51fb\u8fd9\u91cc",
    "Click for more information": "\u70b9\u51fb\u83b7\u5f97\u66f4\u591a\u8d44\u8baf",
    "Click to choose all %s at once.": "\u70b9\u51fb\u9009\u62e9\u5168\u90e8%s\u3002",
    "Click to remove all chosen %s at once.": "\u5220\u9664\u6240\u6709\u5df2\u9009\u62e9\u7684%s\u3002",
    "Close": "\u5173\u95ed",
    "Close filters": "\u5173\u95ed\u7b5b\u9009",
    "Collapse all": "\u5168\u90e8\u6536\u8d77",
    "Comment": "\u8bc4\u8bba",
    "Companies": "\u4f01\u4e1a",
    "Company": "\u4f01\u4e1a",
    "Company Profile": "\u4f01\u4e1a\u4e13\u9875",
    "Company Sectors": "\u4f01\u4e1a\u884c\u4e1a",
    "Contains": "\u5305\u542b",
    "Contract": "\u5408\u540c",
    "Dashboard": "\u63a7\u5236\u9762\u677f",
    "Data Source": "\u6570\u636e\u6e90",
    "Data Usage and Cookies Policy": "\u6570\u636e\u4f7f\u7528\u548c Cookie \u653f\u7b56",
    "Date range": "\u65e5\u671f\u8303\u56f4",
    "December": "\u5341\u4e8c\u6708",
    "Decline all": "\u5168\u90e8\u62d2\u7edd",
    "Decorative image": "\u88c5\u9970\u6027\u56fe\u7247",
    "Delete": "\u5220\u9664",
    "Delete error": "\u5220\u9664\u9519\u8bef",
    "Deleting": "\u5220\u9664\u4e2d",
    "Dismiss": "\u53d6\u6d88",
    "Edit": "\u7f16\u8f91",
    "Edit '%(title)s'": "\u7f16\u8f91 '%(title)s'",
    "Edit your account": "\u7f16\u8f91\u8d26\u6237",
    "Enter your comments...": "\u8f93\u5165\u4f60\u7684\u6ce8\u91ca",
    "Enter your reply...": "\u8f93\u5165\u4f60\u7684\u7b54\u590d",
    "Expand all": "\u5168\u90e8\u5c55\u5f00",
    "Explore more": "\u63a2\u7d22\u66f4\u591a",
    "February": "\u4e8c\u6708",
    "Filter": "\u7b5b\u9009",
    "Filter data": "\u7b5b\u9009\u6570\u636e",
    "Find contracts related to this company": "\u641c\u5bfb\u4e0e\u6b64\u516c\u53f8\u76f8\u5173\u7684\u5408\u540c",
    "Focus comment": "\u805a\u7126\u8bc4\u8bba",
    "For more information on our use of web storage, please refer to our": "\u6709\u5173\u6211\u4eec\u4f7f\u7528\u7f51\u7edc\u5b58\u50a8\u7684\u66f4\u591a\u4fe1\u606f\uff0c\u8bf7\u53c2\u9605\u6211\u4eec\u7684",
    "Full Dashboard": "\u5b8c\u6574\u4e13\u9875",
    "HRD Attacks": "\u9488\u5bf9\u4eba\u6743\u634d\u536b\u8005\u7684\u653b\u51fb",
    "HRD Attacks:": "\u9488\u5bf9\u4eba\u6743\u634d\u536b\u8005\u7684\u653b\u51fb\uff1a",
    "Headquarters": "\u603b\u90e8",
    "Hide": "\u9690\u85cf",
    "Horizontal line": "\u6a2a\u7ebf",
    "Indicators": "\u6307\u6807",
    "Issue references:": "\u53c2\u8003\uff1a",
    "January": "\u4e00\u6708",
    "July": "\u4e03\u6708",
    "June": "\u516d\u6708",
    "Latest news items": "\u6700\u65b0\u6d88\u606f",
    "Lawsuit Profiles": "\u8bc9\u8bbc\u6863\u6848",
    "Line break": "\u6362\u884c",
    "Load more": "\u52a0\u8f7d\u66f4\u591a",
    "Loading\u2026": "\u6b63\u5728\u8f7d\u5165...",
    "Main menu": "\u4e3b\u83dc\u5355",
    "Manage choices": "\u7ba1\u7406\u9009\u9879",
    "March": "\u4e09\u6708",
    "May": "\u4e94\u6708",
    "Midnight": "\u5348\u591c",
    "Missing document": "\u7f3a\u5931\u6587\u6863",
    "More actions": "\u66f4\u591a\u52a8\u4f5c",
    "N/A": "\u4e0d\u5b9e\u7528",
    "No companies related to allegations match your search": "\u6ca1\u6709\u516c\u53f8\u7b26\u5408\u60a8\u7684\u641c\u5bfb",
    "No news found in your language. ": "\u6ca1\u5728\u60a8\u7684\u8bed\u8a00\u7248\u672c\u627e\u5230\u65b0\u95fb\u3002 ",
    "No news found in your language. Try switching to all languages.": "\u6ca1\u5728\u60a8\u7684\u8bed\u8a00\u7248\u672c\u627e\u5230\u65b0\u95fb\u3002\u5207\u6362\u5230\u6240\u6709\u8bed\u8a00\u3002",
    "No projects related to allegations match your search": "\u6ca1\u6709\u9879\u76ee\u7b26\u5408\u60a8\u7684\u641c\u5bfb",
    "No results": "\u6ca1\u6709\u7ed3\u679c",
    "Noon": "\u6b63\u5348",
    "Note: You are %s hour ahead of server time.": [
      "\u6ce8\u610f\uff1a\u4f60\u6bd4\u670d\u52a1\u5668\u65f6\u95f4\u8d85\u524d %s \u4e2a\u5c0f\u65f6\u3002"
    ],
    "Note: You are %s hour behind server time.": [
      "\u6ce8\u610f\uff1a\u4f60\u6bd4\u670d\u52a1\u5668\u65f6\u95f4\u6ede\u540e %s \u4e2a\u5c0f\u65f6\u3002"
    ],
    "November": "\u5341\u4e00\u6708",
    "Now": "\u73b0\u5728",
    "OR operator": "\u6216\u8fd0\u7b97\u7b26",
    "October": "\u5341\u6708",
    "Operator": "\u8fd0\u7b97\u7b26",
    "Page": "\u9875\u9762",
    "Page explorer": "\u9875\u9762\u7ba1\u7406",
    "Pages": "\u9875\u9762",
    "Part of": "\u90e8\u5206",
    "Pin toolbar": "\u56fa\u5b9a\u5de5\u5177\u680f",
    "Privacy": "\u9690\u79c1",
    "Privacy information": "\u9690\u79c1\u8d44\u8baf",
    "Project": "\u9879\u76ee",
    "Projects": "\u9879\u76ee",
    "Promotional cookies": "\u5e02\u573a\u8425\u9500cookies",
    "RSS Feed": "\u7b80\u6613\u8d44\u8baf\u805a\u5408",
    "RSS feed": "RSS\u6458\u8981",
    "Read more": "\u9605\u8bfb\u66f4\u591a",
    "Refresh": "\u5237\u65b0",
    "Related Companies": "\u76f8\u5173\u516c\u53f8",
    "Related Projects": "\u6709\u5173\u9879\u76ee",
    "Relationship": "\u5173\u7cfb",
    "Reload saved content": "\u91cd\u65b0\u52a0\u8f7d\u5df2\u4fdd\u5b58\u5185\u5bb9",
    "Reload the page": "\u5237\u65b0\u9875\u9762",
    "Remove": "\u5220\u9664",
    "Remove all": "\u5220\u9664\u5168\u90e8",
    "Reply": "\u56de\u590d",
    "Report this error to your website administrator with the following information:": "\u5411\u7cfb\u7edf\u7ba1\u7406\u5458\u62a5\u544a\u9519\u8bef\u5e76\u63d0\u4f9b\u4ee5\u4e0b\u4fe1\u606f\uff1a",
    "Resolve": "\u89e3\u51b3",
    "Responding to": "\u56de\u5e94",
    "Response Rate": "\u56de\u5e94\u7387",
    "Response Requests": "\u7f6e\u8bc4\u8bf7\u6c42",
    "Retry": "\u91cd\u8bd5",
    "Save": "\u4fdd\u5b58",
    "Save error": "\u4fdd\u5b58\u9519\u8bef",
    "Save the page to add this comment": "\u4fdd\u5b58\u9875\u9762\u6765\u6dfb\u52a0\u6b64\u6761\u8bc4\u8bba\u3002",
    "Save the page to save this comment": "\u4fdd\u5b58\u9875\u9762\u6765\u4fdd\u5b58\u6b64\u6761\u8bc4\u8bba\u3002",
    "Save the page to save this reply": "\u4fdd\u5b58\u9875\u9762\u6765\u4fdd\u5b58\u6b64\u6761\u56de\u590d\u3002",
    "Saving...": "\u6b63\u5728\u4fdd\u5b58\u2026\u2026",
    "Search": "\u641c\u5bfb",
    "Search by company": "\u641c\u5bfb\u516c\u53f8",
    "Search by project": "\u4ee5\u9879\u76ee\u641c\u5bfb",
    "Search for a name": "\u641c\u5bfb\u5173\u952e\u5b57",
    "Search for keywords": "\u641c\u5bfb\u5173\u952e\u5b57",
    "Search options\u2026": "\u641c\u7d22\u9879\u2026",
    "Searching\u2026": "\u641c\u5bfb\u4e2d\u2026",
    "See all": "\u67e5\u770b\u5168\u90e8",
    "Select End Date": "\u9009\u62e9\u7ed3\u675f\u65e5\u671f",
    "Select Start Date": "\u9009\u62e9\u5f00\u59cb\u65e5\u671f",
    "September": "\u4e5d\u6708",
    "Server Error": "\u670d\u52a1\u5668\u9519\u8bef",
    "Show": "\u663e\u793a",
    "Show error": "\u663e\u793a\u9519\u8bef",
    "Show latest content": "\u663e\u793a\u6700\u65b0\u5185\u5bb9",
    "Stakeholders": "\u5229\u76ca\u76f8\u5173\u8005",
    "The editor just crashed. Content has been reset to the last saved version.": "\u7f16\u8f91\u5668\u5d29\u6e83\u4e86\ud83d\ude2d\uff0c\u5185\u5bb9\u88ab\u91cd\u65b0\u8bbe\u7f6e\u4e3a\u6700\u540e\u4fdd\u5b58\u7684\u7248\u672c\u3002",
    "This ": "\u8fd9 ",
    "This field is required.": "\u8fd9\u4e2a\u5b57\u6bb5\u662f\u5fc5\u9700\u7684\u3002",
    "This is the list of available %s. You may choose some by selecting them in the box below and then clicking the \"Choose\" arrow between the two boxes.": "\u8fd9\u662f\u53ef\u7528\u7684%s\u5217\u8868\u3002\u4f60\u53ef\u4ee5\u5728\u9009\u62e9\u6846\u4e0b\u9762\u8fdb\u884c\u9009\u62e9\uff0c\u7136\u540e\u70b9\u51fb\u4e24\u9009\u6846\u4e4b\u95f4\u7684\u201c\u9009\u62e9\u201d\u7bad\u5934\u3002",
    "This is the list of chosen %s. You may remove some by selecting them in the box below and then clicking the \"Remove\" arrow between the two boxes.": "\u8fd9\u662f\u9009\u4e2d\u7684 %s \u7684\u5217\u8868\u3002\u4f60\u53ef\u4ee5\u5728\u9009\u62e9\u6846\u4e0b\u9762\u8fdb\u884c\u9009\u62e9\uff0c\u7136\u540e\u70b9\u51fb\u4e24\u9009\u6846\u4e4b\u95f4\u7684\u201c\u5220\u9664\u201d\u7bad\u5934\u8fdb\u884c\u5220\u9664\u3002",
    "This site uses cookies and other web storage technologies to enhance your experience beyond necessary core functionality.": "\u672c\u7f51\u7ad9\u4f7f\u7528cookie\u548c\u5176\u4ed6\u7f51\u7edc\u5b58\u50a8\u6280\u672f\u6765\u589e\u5f3a\u60a8\u5728\u5fc5\u8981\u6838\u5fc3\u529f\u80fd\u4e4b\u5916\u7684\u4f53\u9a8c\u3002",
    "This site uses cookies and other web storage technologies. You can set your privacy choices below. Changes will take effect immediately.": "\u672c\u7f51\u7ad9\u4f7f\u7528 cookie \u548c\u5176\u4ed6\u7f51\u7edc\u5b58\u50a8\u6280\u672f\u3002\u60a8\u53ef\u4ee5\u5728\u4e0b\u65b9\u8bbe\u7f6e\u60a8\u7684\u9690\u79c1\u9009\u9879\u3002\u60a8\u6240\u4f5c\u7684\u66f4\u6539\u5c06\u7acb\u5373\u751f\u6548\u3002",
    "This story contains %s item": [
      "\u8fd9\u6545\u4e8b\u5305\u542b%s\u9879\u76ee"
    ],
    "This story contains 1 company response": [
      "\u8fd9\u6545\u4e8b\u5305\u542b%s\u4f01\u4e1a\u56de\u5e94"
    ],
    "This story contains 1 item": [
      "\u8fd9\u6545\u4e8b\u5305\u542b%s\u9879\u76ee"
    ],
    "Today": "\u4eca\u5929",
    "Toggle side panel": "\u8fb9\u680f\u9762\u677f\u5f00\u5173",
    "Toggle sidebar": "\u5207\u6362\u4fa7\u8fb9\u680f",
    "Tomorrow": "\u660e\u5929",
    "Try switching to all languages.": "\u8bf7\u5207\u6362\u5230\u6240\u6709\u8bed\u8a00\u3002",
    "Type into this box to filter down the list of available %s.": "\u5728\u6b64\u6846\u4e2d\u952e\u5165\u4ee5\u8fc7\u6ee4\u53ef\u7528\u7684%s\u5217\u8868",
    "Type into this box to filter down the list of selected %s.": "\u5728\u8be5\u6846\u4e2d\u952e\u5165\u4ee5\u8fc7\u6ee4\u6240\u9009%s\u7684\u5217\u8868\u3002",
    "Unfocus comment": "\u53d6\u6d88\u805a\u7126\u8bc4\u8bba",
    "Unpin toolbar": "\u53d6\u6d88\u56fa\u5b9a\u5de5\u5177\u680f",
    "Updated": "\u5df2\u66f4\u65b0",
    "View Dashboard": "\u67e5\u770b\u4e13\u9875",
    "View child pages of '%(title)s'": "\u67e5\u770b '%(title)s' \u7684\u5b50\u9875\u9762",
    "We share news and updates on business and human rights through third party platforms, including social media and search engines. These cookies help us to understand the performance of these promotions.": "\u6211\u4eec\u4ece\u7b2c\u4e09\u65b9\u7f51\u7ad9\u83b7\u5f97\u4f01\u4e1a\u8d23\u4efb\u8d44\u8baf\uff0c\u5f53\u4e2d\u5305\u62ec\u793e\u4ea4\u5a92\u4f53\u548c\u641c\u5bfb\u5f15\u64ce\u3002\u8fd9\u4e9bcookie\u534f\u52a9\u6211\u4eec\u7406\u89e3\u76f8\u5173\u6d4f\u89c8\u6570\u636e\u3002",
    "When you access our website we use Google Analytics to collect information on your visit. Accepting this cookie will allow us to understand more details about your journey, and improve how we surface information. All analytics information is anonymous and we do not use it to identify you. Google provides a Google Analytics opt-out add on for all popular browsers.": "\u60a8\u6d4f\u89c8\u672c\u7f51\u9875\u65f6\u6211\u4eec\u5c06\u4ee5Google Analytics\u6536\u96c6\u4fe1\u606f\u3002\u63a5\u53d7\u6b64cookie\u5c06\u6709\u52a9\u6211\u4eec\u7406\u89e3\u60a8\u7684\u6d4f\u89c8\u8d44\u8baf\uff0c\u5e76\u534f\u52a9\u6211\u4eec\u6539\u5584\u5448\u73b0\u8d44\u8baf\u7684\u65b9\u6cd5\u3002\u6240\u6709\u5206\u6790\u8d44\u8baf\u90fd\u4ee5\u533f\u540d\u65b9\u5f0f\u6536\u96c6\uff0c\u6211\u4eec\u5e76\u4e0d\u80fd\u7528\u76f8\u5173\u8d44\u8baf\u5f97\u5230\u60a8\u7684\u4e2a\u4eba\u4fe1\u606f\u3002\u8c37\u6b4c\u5728\u6240\u6709\u4e3b\u8981\u6d4f\u89c8\u5668\u4e2d\u90fd\u63d0\u4f9b\u9000\u51faGoogle Analytics\u7684\u6dfb\u52a0\u5e94\u7528\u7a0b\u5f0f\u3002",
    "While you're here, could you support our work?": "\u6211\u4eec\u8bda\u9080\u60a8\u6350\u6b3e\u652f\u6301\u672c\u4e2d\u5fc3\u7684\u5de5\u4f5c",
    "Yesterday": "\u6628\u5929",
    "You have selected an action, and you haven\u2019t made any changes on individual fields. You\u2019re probably looking for the Go button rather than the Save button.": "\u4f60\u5df2\u7ecf\u9009\u62e9\u4e00\u4e2a\u52a8\u4f5c\uff0c\u4f46\u662f\u6ca1\u6709\u5355\u72ec\u4fee\u6539\u4efb\u4f55\u4e00\u5904\u3002\u4f60\u53ef\u4ee5\u9009\u62e9'Go'\u6309\u952e\u800c\u4e0d\u662f'Save'\u6309\u952e\u3002",
    "You have selected an action, but you haven\u2019t saved your changes to individual fields yet. Please click OK to save. You\u2019ll need to re-run the action.": "\u4f60\u5df2\u7ecf\u9009\u62e9\u4e00\u4e2a\u52a8\u4f5c\uff0c\u4f46\u662f\u4f60\u6ca1\u6709\u4fdd\u5b58\u4f60\u5355\u72ec\u4fee\u6539\u7684\u5730\u65b9\u3002\u8bf7\u70b9\u51fbOK\u4fdd\u5b58\u3002\u4f60\u9700\u8981\u518d\u91cd\u65b0\u8dd1\u8fd9\u4e2a\u52a8\u4f5c\u3002",
    "You have unsaved changes on individual editable fields. If you run an action, your unsaved changes will be lost.": "\u4f60\u5c1a\u672a\u4fdd\u5b58\u4e00\u4e2a\u53ef\u7f16\u8f91\u680f\u4f4d\u7684\u53d8\u66f4. \u5982\u679c\u4f60\u8fdb\u884c\u522b\u7684\u52a8\u4f5c, \u672a\u4fdd\u5b58\u7684\u53d8\u66f4\u5c06\u4f1a\u4e22\u5931.",
    "Your privacy choices for this site": "\u60a8\u5728\u6b64\u7f51\u7ad9\u4e0a\u7684\u9690\u79c1\u9009\u9879",
    "abbrev. month April\u0004Apr": "\u56db\u6708",
    "abbrev. month August\u0004Aug": "\u516b\u6708",
    "abbrev. month December\u0004Dec": "\u5341\u4e8c\u6708",
    "abbrev. month February\u0004Feb": "\u4e8c\u6708",
    "abbrev. month January\u0004Jan": "\u4e00\u6708",
    "abbrev. month July\u0004Jul": "\u4e03\u6708",
    "abbrev. month June\u0004Jun": "\u516d\u6708",
    "abbrev. month March\u0004Mar": "\u4e09\u6708",
    "abbrev. month May\u0004May": "\u4e94\u6708",
    "abbrev. month November\u0004Nov": "\u5341\u4e00\u6708",
    "abbrev. month October\u0004Oct": "\u5341\u6708",
    "abbrev. month September\u0004Sep": "\u4e5d\u6708",
    "and": "\u548c",
    "and %s other story": [
      "\u548c%s\u5176\u4ed6\u6545\u4e8b"
    ],
    "company non response": "\u4f01\u4e1a\u672a\u56de\u5e94",
    "company non responses": "\u4f01\u4e1a\u672a\u56de\u5e94",
    "company response": "\u4f01\u4e1a\u56de\u5e94",
    "company responses": "\u4f01\u4e1a\u56de\u5e94",
    "one letter Friday\u0004F": "F",
    "one letter Monday\u0004M": "M",
    "one letter Saturday\u0004S": "S",
    "one letter Sunday\u0004S": "S",
    "one letter Thursday\u0004T": "T",
    "one letter Tuesday\u0004T": "T",
    "one letter Wednesday\u0004W": "W",
    "references:": "\u53c2\u8003\uff1a"
  };
  for (const key in newcatalog) {
    django.catalog[key] = newcatalog[key];
  }
  

  if (!django.jsi18n_initialized) {
    django.gettext = function(msgid) {
      const value = django.catalog[msgid];
      if (typeof value === 'undefined') {
        return msgid;
      } else {
        return (typeof value === 'string') ? value : value[0];
      }
    };

    django.ngettext = function(singular, plural, count) {
      const value = django.catalog[singular];
      if (typeof value === 'undefined') {
        return (count == 1) ? singular : plural;
      } else {
        return value.constructor === Array ? value[django.pluralidx(count)] : value;
      }
    };

    django.gettext_noop = function(msgid) { return msgid; };

    django.pgettext = function(context, msgid) {
      let value = django.gettext(context + '\x04' + msgid);
      if (value.includes('\x04')) {
        value = msgid;
      }
      return value;
    };

    django.npgettext = function(context, singular, plural, count) {
      let value = django.ngettext(context + '\x04' + singular, context + '\x04' + plural, count);
      if (value.includes('\x04')) {
        value = django.ngettext(singular, plural, count);
      }
      return value;
    };

    django.interpolate = function(fmt, obj, named) {
      if (named) {
        return fmt.replace(/%\(\w+\)s/g, function(match){return String(obj[match.slice(2,-2)])});
      } else {
        return fmt.replace(/%s/g, function(match){return String(obj.shift())});
      }
    };


    /* formatting library */

    django.formats = {
    "DATETIME_FORMAT": "Y\u5e74n\u6708j\u65e5 H:i",
    "DATETIME_INPUT_FORMATS": [
      "%Y/%m/%d %H:%M",
      "%Y-%m-%d %H:%M",
      "%Y\u5e74%n\u6708%j\u65e5 %H:%M",
      "%Y/%m/%d %H:%M:%S",
      "%Y-%m-%d %H:%M:%S",
      "%Y\u5e74%n\u6708%j\u65e5 %H:%M:%S",
      "%Y/%m/%d %H:%M:%S.%f",
      "%Y-%m-%d %H:%M:%S.%f",
      "%Y\u5e74%n\u6708%j\u65e5 %H:%n:%S.%f",
      "%Y-%m-%d"
    ],
    "DATE_FORMAT": "Y\u5e74n\u6708j\u65e5",
    "DATE_INPUT_FORMATS": [
      "%Y/%m/%d",
      "%Y-%m-%d",
      "%Y\u5e74%n\u6708%j\u65e5"
    ],
    "DECIMAL_SEPARATOR": ".",
    "FIRST_DAY_OF_WEEK": 1,
    "MONTH_DAY_FORMAT": "m\u6708j\u65e5",
    "NUMBER_GROUPING": 4,
    "SHORT_DATETIME_FORMAT": "Y\u5e74n\u6708j\u65e5 H:i",
    "SHORT_DATE_FORMAT": "Y\u5e74n\u6708j\u65e5",
    "THOUSAND_SEPARATOR": "",
    "TIME_FORMAT": "H:i",
    "TIME_INPUT_FORMATS": [
      "%H:%M",
      "%H:%M:%S",
      "%H:%M:%S.%f"
    ],
    "YEAR_MONTH_FORMAT": "Y\u5e74n\u6708"
  };

    django.get_format = function(format_type) {
      const value = django.formats[format_type];
      if (typeof value === 'undefined') {
        return format_type;
      } else {
        return value;
      }
    };

    /* add to global namespace */
    globals.pluralidx = django.pluralidx;
    globals.gettext = django.gettext;
    globals.ngettext = django.ngettext;
    globals.gettext_noop = django.gettext_noop;
    globals.pgettext = django.pgettext;
    globals.npgettext = django.npgettext;
    globals.interpolate = django.interpolate;
    globals.get_format = django.get_format;

    django.jsi18n_initialized = true;
  }
};

