Odisha is a state in India with 30 districts.

Rankings of districts were ascertianed by consolidating development level of districts across various socio-economic paramenters.


Indicator levels for Odisha:


Various socio-economic parameters were used as indicators to judge development levels of districts in Odisha, and districts were ranked accordingly.

Socio-economic Index gives the rankings of states on individual parameters. The parameters that have been used are described below. Note that all of the values are in percentage.
  • Household with electricity: Bhadrak district has the highest rate of electrification, and Kalahandi the lowest. As a whole, 85.5% households in Odisha have electricity.

  • Households with an improved drinking water source: Bhadrak has the highest percent population with an improved drinking water source, whereas Dhenkanal has the lowest. Odisha as whole has 88.8% households with an improved drinking water source.

  • Households using improved sanitation facility: Khorda has the highest percent, and Balangir the lowest, of the households using improved sanitation facility. But, even the maximum is less than 50% of the households. This number falls to less than 30% if the entirety of Odisha is considered.

  • Households using clean fuel for cooking: Khorda has the highest percent, and Malkangiri the lowest at less than 10%, of the households using clean fuel for cooking. Only about 20% of the households in Odisha are using clean fuel for cooking.

  • Households using iodized salt: A majority of households in every district in Odisha use iodized salts, with the lowest percent of this parameter being 75%. 93% of all households in Odisha use iodized salt.

  • Households with a member covered by health scheme or health insurance: Kandhamal has the maximum percent of households partaking in health schemes, and Cutack has the lowest. About 50% of the houseolds of Odisha are covered by such schemes and insurances.

  • Literacy rate: The literacy rate in Jagatsinghapur is the highest, Malkangiri is the lowest. However, the district of Kendrapara has an equal number of men & women literate, Jagatsinghapur having the highest women literate and Malkangiri the lowest. As a whole, 85% of men and 67% women in Odisha are literate.

  • Women with 10 or more years of schooling: Only 30% of the women have completed 10 or more years of schooling in Odisha, with districts Khordha having the highest percent at 38% and Nabarangpur having the lowest percentage at 10%.

  • Teenage pregnancy: Women of age 15-19 who were pregnant or mother when survey conducted have been accounted under this indicator. In Odisha, 7.6% of mothers are teenage, with highest being Mayyurbhanj(15%) and lowest being in Cuttack(1%)

  • Health checkup of pregnant women: This depicts the percent of mother that were given folic acid during pregnancy, had checkups in the first trimester, had four antenatal health checkups, full antenatal care, and whose last birth was protected against neonatal tetanus.

  • Post birth healthcare for mother and child: This depicts the post birth health care recieved by mother and child, with numbers for mothers being significantly higher than those of children.

  • Delivery by Caesarean section: This depicts delieveries by Caesarean section in public and private medical facility, with those in private facility being significantly higher.

  • Children vaccinated: This depicts the percentage of children protected against diseases like BCG, hepaptitis, DPT, polio, etc

  • Prevalnce of Diarrheoa: The occurance of diarrheoa is 10% in Odisha, with it being most prevalent in Kendujhar, with 21% occurances and least prevalent in Bargarh at 1%

  • Infants recieving adequate diet : This depicts children between 6-23 months who are receing adequate diet. only 8.5% infants recieve adequate diet in Odisha, with it being 16% in district Puri and 2% in district Nuapada

  • Growth deficiency among children: Children under age 5 who are severly wasted(weight for height), wasted(weight for height), stunted(height for age) and underweight(weight for age) are accounted under this category. The highest growth deificiency is in district Nabarangapur and lowest in Cuttack.

  • Population that is overweight or obese: District Khorda has the highest percentage of people in the category, and Malkangiri the lowest. Even though, being obese/overweight is a sign of ill-health, it is a pointer to prosperity.


LS0tDQp0aXRsZTogIlNvY2lvLWVjb25vbWljIERldmVsb3BtZW50IGluIE9kaXNoYSINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQoNCiMjI09kaXNoYSBpcyBhIHN0YXRlIGluIEluZGlhIHdpdGggMzAgZGlzdHJpY3RzLiANCg0KPiBSYW5raW5ncyBvZiBkaXN0cmljdHMgd2VyZSBhc2NlcnRpYW5lZCBieSBjb25zb2xpZGF0aW5nIGRldmVsb3BtZW50IGxldmVsIG9mIGRpc3RyaWN0cyBhY3Jvc3MgdmFyaW91cyBzb2Npby1lY29ub21pYyBwYXJhbWVudGVycy4gDQoNCg0KYGBge3IsIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0UsIGluY2x1ZGU9RkFMU0V9DQpyZXF1aXJlKHJlYWRyKQ0Kb2Rpc2hhX2RhdGExIDwtIHJlYWRfY3N2KCIuL2RhdGEvb2Rpc2hhIGRhdGExLmNzdiIpDQoNCmluZGljYXRvcnMgPC0gcmVhZF9jc3YoIi4vZGF0YS9pbmRpY2F0b3JzLmNzdiIpDQppbmRpY2F0b3JzIDwtIGluZGljYXRvcnNbIWlzLm5hKGluZGljYXRvcnMpLF1bMTo0OSxdDQoNCg0KDQpyYW5rcyA8LSBkYXRhLmZyYW1lKCkNCnJhbmtzIDwtIGFzLmRhdGEuZnJhbWUodW5pcXVlKG9kaXNoYV9kYXRhMSRkaXN0cmljdCkpDQpjb2xuYW1lcyhyYW5rcyk8LSBjKCJkaXN0cmljdCIpDQpyZXFkYXRhIDwtIG9kaXNoYV9kYXRhMQ0KDQpyZXFpbmRpIDwtIGMoNiw3LDgsOSwxMCwxMSwxMiwxMywxNCwxNywyOSwzMCwzMSwzMiwzMywzNSwzOSw0NSw0Niw0Nyw0OCw0OSw1MCw1MSw1Miw1Niw2Nyw2OCw2OSw3MCw3MSw3NCw3NSkNCg0KIyNyZW1vdmUgYWxsIHRoZSB1bmVjZXNzYXJ5IGluZGljYXRvciBmcm9tIHJlcWRhdGEgZmlsZQ0KDQpyZXFkYXRhIDwtIHN1YnNldChyZXFkYXRhLCByZXFkYXRhJGluZGljYXRvcl9udW1iZXIgJWluJSByZXFpbmRpKQ0KDQojI2Fzc2lnbiBuZWcgdmFsdWVzIHRvIHNvbWUgaW5kaWNhdG9ycw0KDQpyZXFkYXRhMiA8LSByZXFkYXRhWyxjKDIsIDQsIDcsOCldDQoNCnJlcWRhdGEyW3doaWNoKHJlcWRhdGEyJGluZGljYXRvcl9udW1iZXIgJWluJSBjKDY4OjcxKSksICJ0b3RhbCJdIDwtIC1yZXFkYXRhMlt3aGljaChyZXFkYXRhMiRpbmRpY2F0b3JfbnVtYmVyICVpbiUgYyg2ODo3MSkpLCAidG90YWwiXQ0KDQpyZXF1aXJlKGRwbHlyKQ0KcmVxdWlyZShnZ3Bsb3QyKQ0KZm9yKGkgaW4gcmVxaW5kaSl7DQogIGluZGkgPC0gZmlsdGVyKG9kaXNoYV9kYXRhMSwgaW5kaWNhdG9yX251bWJlcj09aSkNCiAgdGVtcCA8LSBpbmRpWyxjKDIsNCldDQogIHRlbXAgPC0gdGVtcFtvcmRlcigtdGVtcCR0b3RhbCksXQ0KICB0ZW1wJHJhbmsgPC0gMTozMA0KICByYW5rcyA8LSBtZXJnZShyYW5rcywgdGVtcFssYygxLDMpXSwgYnk9ImRpc3RyaWN0IikNCiAgDQp9DQoNCnJhbmtzJHN1bSA8LSByb3dTdW1zKHJhbmtzDQogICAgICAgIFssYygyOjMzKV0pDQoNCg0KcmFua3MyIDwtIHJhbmtzWyxjKDEsMzUpXQ0KcmFua3MyIDwtIHJhbmtzMltvcmRlcihyYW5rczIkc3VtKSxdDQpgYGANCg0KDQpgYGB7ciwgZWNobz1GQUxTRSwgZmlnLmhlaWdodD04LCBmaWcud2lkdGg9MTUsIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9DQoNCg0KcmVxdWlyZShSQ29sb3JCcmV3ZXIpDQpnZXRQYWxldHRlID0gY29sb3JSYW1wUGFsZXR0ZShicmV3ZXIucGFsKDksICJTZXQxIikpDQpnZ3Bsb3QocmFua3MyLCBhZXMoeD1yZW9yZGVyKGFzLmZhY3RvcihkaXN0cmljdCksIC1zdW0pLCB5PSBzdW0sIGZpbGw9ZmFjdG9yKHN1bSkpKStnZW9tX2hpc3RvZ3JhbShzdGF0PSJpZGVudGl0eSIsIHdpZHRoPTAuNzUsZmlsbD1nZXRQYWxldHRlKDMwKSkrdGhlbWUoYXhpcy50aXRsZT1lbGVtZW50X3RleHQoc2l6ZT0xOCxmYWNlPSJib2xkIiksYXhpcy50ZXh0Lnk9ZWxlbWVudF9ibGFuaygpLGF4aXMudGlja3MueT1lbGVtZW50X2JsYW5rKCksYXhpcy50aWNrcy54PWVsZW1lbnRfYmxhbmsoKSxheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChzaXplPTEyLGFuZ2xlID0gNzUsIGhqdXN0ID0gMSkscGFuZWwuZ3JpZC5tYWpvciA9IGVsZW1lbnRfYmxhbmsoKSwgcGFuZWwuZ3JpZC5taW5vciA9IGVsZW1lbnRfYmxhbmsoKSwgcGFuZWwuYm9yZGVyID0gZWxlbWVudF9ibGFuaygpLCBwYW5lbC5iYWNrZ3JvdW5kID0gZWxlbWVudF9ibGFuaygpKSt4bGFiKCJEaXN0cmljdCIpK3lsYWIoIiIpDQoNCg0KIytzY2FsZV9maWxsX2JyZXdlcihwYWxldHRlID0gIlNldDEiKQ0KDQojK3NjYWxlX2ZpbGxfZ3JhZGllbnRuKGNvbG91cnMgPSB0ZXJyYWluLmNvbG9ycygxMCkpDQoNCmBgYA0KDQoNCioqKiANCg0KDQoNCj4gSW5kaWNhdG9yIGxldmVscyBmb3IgT2Rpc2hhOg0KDQoNCg0KDQpgYGB7ciwgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRSwgaW5jbHVkZT1GQUxTRX0NCnJlcXVpcmUocmVhZHIpDQpuZmhzPC0gcmVhZF9jc3YoIn4vR2l0SHViL25maHMtZGF0YS9uZmhzX3N0YXRlLXdpc2UuY3N2IikNCm5maHNfb2Rpc2hhIDwtIGZpbHRlcihuZmhzLCBzdGF0ZT09Ik9kaXNoYSIpDQoNCm5maHNfb2Rpc2hhX3JlbCA8LSByZWFkX2NzdigiRDovUHJvamVjdHMvc29jaWFsY29wcy9Tb2NpbyBlY28gaW5kZXggT2Rpc2hhL25maHNfb2Rpc2hhX1JlbC5jc3YiKQ0KbmZoc19vZGlzaGFfcmVsIDwtIG5maHNfb2Rpc2hhX3JlbFstYygxKSxdDQoNCmBgYA0KDQoNCmBgYHtyLCBlY2hvPUZBTFNFLCBmaWcuaGVpZ2h0PTEyLCBmaWcud2lkdGg9MTUsIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9DQpnZ3Bsb3QobmZoc19vZGlzaGFfcmVsLCBhZXMoeD1pbmRpY2F0b29yX2NhdGVnb3J5LCB5PSB0b3RhbCwgZmlsbD1pbmRpY2F0b3IpKStnZW9tX2hpc3RvZ3JhbShzdGF0PSJpZGVudGl0eSIsIHdpZHRoPTAuNzUsIHBvc2l0aW9uPSJkb2RnZSIsY29sb3VyPSJibGFjayIpK3RoZW1lKGF4aXMudGl0bGU9ZWxlbWVudF90ZXh0KHNpemU9MTgsZmFjZT0iYm9sZCIpLGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gNDUsIGhqdXN0ID0gMSwgc2l6ZT0xMikscGFuZWwuZ3JpZC5tYWpvciA9IGVsZW1lbnRfbGluZShjb2xvdXIgPSAiI2QzZDNkMyIpLCBwYW5lbC5ncmlkLm1pbm9yID0gZWxlbWVudF9ibGFuaygpLCBwYW5lbC5ib3JkZXIgPSBlbGVtZW50X2JsYW5rKCksIHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X2JsYW5rKCkpK3RoZW1lKGxlZ2VuZC5wb3NpdGlvbj0iYm90dG9tIixsZWdlbmQudGV4dD1lbGVtZW50X3RleHQoc2l6ZT03KSxsZWdlbmQua2V5LnNpemUgPSB1bml0KC43LCAiY20iKSkrZ3VpZGVzKGZpbGw9Z3VpZGVfbGVnZW5kKG5jb2w9MykpK3lsYWIoIlBvcHVsYXRpb24gKGluIHBlcmNlbnQpIikreGxhYigiSW5kaWNhdG9yIikNCmBgYA0KDQoqKioNCg0KPiBWYXJpb3VzIHNvY2lvLWVjb25vbWljIHBhcmFtZXRlcnMgd2VyZSB1c2VkIGFzIGluZGljYXRvcnMgdG8ganVkZ2UgZGV2ZWxvcG1lbnQgbGV2ZWxzIG9mIGRpc3RyaWN0cyBpbiBPZGlzaGEsIGFuZCBkaXN0cmljdHMgd2VyZSByYW5rZWQgYWNjb3JkaW5nbHkuIA0KDQojIyMjIyBbU29jaW8tZWNvbm9taWMgSW5kZXhdKGh0dHBzOi8vcmVpbmRlZXItZ2FtZXMuc2hpbnlhcHBzLmlvL29kaXNoYV9pbmRleC8pIGdpdmVzIHRoZSByYW5raW5ncyBvZiBzdGF0ZXMgb24gaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLiBUaGUgcGFyYW1ldGVycyB0aGF0IGhhdmUgYmVlbiB1c2VkIGFyZSBkZXNjcmliZWQgYmVsb3cuIE5vdGUgdGhhdCBhbGwgb2YgdGhlIHZhbHVlcyBhcmUgaW4gcGVyY2VudGFnZS4gDQoNCiogKipIb3VzZWhvbGQgd2l0aCBlbGVjdHJpY2l0eSoqOiBCaGFkcmFrIGRpc3RyaWN0IGhhcyB0aGUgaGlnaGVzdCByYXRlIG9mIGVsZWN0cmlmaWNhdGlvbiwgYW5kIEthbGFoYW5kaSB0aGUgbG93ZXN0LiBBcyBhIHdob2xlLCA4NS41JSBob3VzZWhvbGRzIGluIE9kaXNoYSBoYXZlIGVsZWN0cmljaXR5LiAgDQoNCiogKipIb3VzZWhvbGRzIHdpdGggYW4gaW1wcm92ZWQgZHJpbmtpbmcgd2F0ZXIgc291cmNlKio6IEJoYWRyYWsgaGFzIHRoZSBoaWdoZXN0IHBlcmNlbnQgcG9wdWxhdGlvbiB3aXRoIGFuIGltcHJvdmVkIGRyaW5raW5nIHdhdGVyIHNvdXJjZSwgd2hlcmVhcyBEaGVua2FuYWwgaGFzIHRoZSBsb3dlc3QuIE9kaXNoYSBhcyB3aG9sZSBoYXMgODguOCUgaG91c2Vob2xkcyB3aXRoIGFuIGltcHJvdmVkIGRyaW5raW5nIHdhdGVyIHNvdXJjZS4NCg0KKiAqKkhvdXNlaG9sZHMgdXNpbmcgaW1wcm92ZWQgc2FuaXRhdGlvbiBmYWNpbGl0eSoqOiBLaG9yZGEgaGFzIHRoZSBoaWdoZXN0IHBlcmNlbnQsIGFuZCBCYWxhbmdpciB0aGUgbG93ZXN0LCBvZiB0aGUgaG91c2Vob2xkcyB1c2luZyBpbXByb3ZlZCBzYW5pdGF0aW9uIGZhY2lsaXR5LiBCdXQsIGV2ZW4gdGhlIG1heGltdW0gaXMgbGVzcyB0aGFuIDUwJSBvZiB0aGUgaG91c2Vob2xkcy4gVGhpcyBudW1iZXIgZmFsbHMgdG8gbGVzcyB0aGFuIDMwJSBpZiB0aGUgZW50aXJldHkgb2YgT2Rpc2hhIGlzIGNvbnNpZGVyZWQuIA0KDQoqICoqSG91c2Vob2xkcyB1c2luZyBjbGVhbiBmdWVsIGZvciBjb29raW5nKio6IEtob3JkYSBoYXMgdGhlIGhpZ2hlc3QgcGVyY2VudCwgYW5kIE1hbGthbmdpcmkgdGhlIGxvd2VzdCBhdCBsZXNzIHRoYW4gMTAlLCBvZiB0aGUgaG91c2Vob2xkcyB1c2luZyBjbGVhbiBmdWVsIGZvciBjb29raW5nLiBPbmx5IGFib3V0IDIwJSBvZiB0aGUgaG91c2Vob2xkcyBpbiBPZGlzaGEgYXJlIHVzaW5nIGNsZWFuIGZ1ZWwgZm9yIGNvb2tpbmcuDQoNCiogKipIb3VzZWhvbGRzIHVzaW5nIGlvZGl6ZWQgc2FsdCoqOiBBIG1ham9yaXR5IG9mIGhvdXNlaG9sZHMgaW4gZXZlcnkgZGlzdHJpY3QgaW4gT2Rpc2hhIHVzZSBpb2RpemVkIHNhbHRzLCB3aXRoIHRoZSBsb3dlc3QgcGVyY2VudCBvZiB0aGlzIHBhcmFtZXRlciBiZWluZyA3NSUuIDkzJSBvZiBhbGwgaG91c2Vob2xkcyBpbiBPZGlzaGEgdXNlIGlvZGl6ZWQgc2FsdC4gDQoNCiogKipIb3VzZWhvbGRzIHdpdGggYSBtZW1iZXIgY292ZXJlZCBieSBoZWFsdGggc2NoZW1lIG9yIGhlYWx0aCBpbnN1cmFuY2UqKjogS2FuZGhhbWFsIGhhcyB0aGUgbWF4aW11bSBwZXJjZW50IG9mIGhvdXNlaG9sZHMgcGFydGFraW5nIGluIGhlYWx0aCBzY2hlbWVzLCBhbmQgQ3V0YWNrIGhhcyB0aGUgbG93ZXN0LiBBYm91dCA1MCUgb2YgdGhlIGhvdXNlb2xkcyBvZiBPZGlzaGEgYXJlIGNvdmVyZWQgYnkgc3VjaCBzY2hlbWVzIGFuZCBpbnN1cmFuY2VzLiANCg0KKiAqKkxpdGVyYWN5IHJhdGUqKjogVGhlIGxpdGVyYWN5IHJhdGUgaW4gSmFnYXRzaW5naGFwdXIgaXMgdGhlIGhpZ2hlc3QsIE1hbGthbmdpcmkgaXMgdGhlIGxvd2VzdC4gSG93ZXZlciwgdGhlIGRpc3RyaWN0IG9mIEtlbmRyYXBhcmEgaGFzIGFuIGVxdWFsIG51bWJlciBvZiBtZW4gJiB3b21lbiBsaXRlcmF0ZSwgSmFnYXRzaW5naGFwdXIgaGF2aW5nIHRoZSBoaWdoZXN0IHdvbWVuIGxpdGVyYXRlIGFuZCBNYWxrYW5naXJpIHRoZSBsb3dlc3QuIEFzIGEgd2hvbGUsIDg1JSBvZiBtZW4gYW5kIDY3JSB3b21lbiBpbiBPZGlzaGEgYXJlIGxpdGVyYXRlLiAgDQoNCiogKipXb21lbiB3aXRoIDEwIG9yIG1vcmUgeWVhcnMgb2Ygc2Nob29saW5nKio6IE9ubHkgMzAlIG9mIHRoZSB3b21lbiBoYXZlIGNvbXBsZXRlZCAxMCBvciBtb3JlIHllYXJzIG9mIHNjaG9vbGluZyBpbiBPZGlzaGEsIHdpdGggZGlzdHJpY3RzIEtob3JkaGEgaGF2aW5nIHRoZSBoaWdoZXN0IHBlcmNlbnQgYXQgMzglIGFuZCBOYWJhcmFuZ3B1ciBoYXZpbmcgdGhlIGxvd2VzdCBwZXJjZW50YWdlIGF0IDEwJS4NCg0KKiAqKlRlZW5hZ2UgcHJlZ25hbmN5Kio6IFdvbWVuIG9mIGFnZSAxNS0xOSB3aG8gd2VyZSBwcmVnbmFudCBvciBtb3RoZXIgd2hlbiBzdXJ2ZXkgY29uZHVjdGVkIGhhdmUgYmVlbiBhY2NvdW50ZWQgdW5kZXIgdGhpcyBpbmRpY2F0b3IuIEluIE9kaXNoYSwgNy42JSBvZiBtb3RoZXJzIGFyZSB0ZWVuYWdlLCB3aXRoIGhpZ2hlc3QgYmVpbmcgTWF5eXVyYmhhbmooMTUlKSBhbmQgbG93ZXN0IGJlaW5nIGluIEN1dHRhY2soMSUpDQoNCiogKipIZWFsdGggY2hlY2t1cCBvZiBwcmVnbmFudCB3b21lbioqOiBUaGlzIGRlcGljdHMgdGhlIHBlcmNlbnQgb2YgbW90aGVyIHRoYXQgd2VyZSBnaXZlbiBmb2xpYyBhY2lkIGR1cmluZyBwcmVnbmFuY3ksIGhhZCBjaGVja3VwcyBpbiB0aGUgZmlyc3QgdHJpbWVzdGVyLCBoYWQgZm91ciBhbnRlbmF0YWwgaGVhbHRoIGNoZWNrdXBzLCBmdWxsIGFudGVuYXRhbCBjYXJlLCBhbmQgd2hvc2UgbGFzdCBiaXJ0aCB3YXMgcHJvdGVjdGVkIGFnYWluc3QgbmVvbmF0YWwgdGV0YW51cy4gDQoNCiogKipQb3N0IGJpcnRoIGhlYWx0aGNhcmUgZm9yIG1vdGhlciBhbmQgY2hpbGQqKjogVGhpcyBkZXBpY3RzIHRoZSBwb3N0IGJpcnRoIGhlYWx0aCBjYXJlIHJlY2lldmVkIGJ5IG1vdGhlciBhbmQgY2hpbGQsIHdpdGggbnVtYmVycyBmb3IgbW90aGVycyBiZWluZyBzaWduaWZpY2FudGx5IGhpZ2hlciB0aGFuIHRob3NlIG9mIGNoaWxkcmVuLiANCg0KKiAqKkRlbGl2ZXJ5IGJ5IENhZXNhcmVhbiBzZWN0aW9uKio6IFRoaXMgZGVwaWN0cyBkZWxpZXZlcmllcyBieSBDYWVzYXJlYW4gc2VjdGlvbiBpbiBwdWJsaWMgYW5kIHByaXZhdGUgbWVkaWNhbCBmYWNpbGl0eSwgd2l0aCB0aG9zZSBpbiBwcml2YXRlIGZhY2lsaXR5IGJlaW5nIHNpZ25pZmljYW50bHkgaGlnaGVyLiANCg0KKiAqKkNoaWxkcmVuIHZhY2NpbmF0ZWQqKjogVGhpcyBkZXBpY3RzIHRoZSBwZXJjZW50YWdlIG9mIGNoaWxkcmVuIHByb3RlY3RlZCBhZ2FpbnN0IGRpc2Vhc2VzIGxpa2UgQkNHLCBoZXBhcHRpdGlzLCBEUFQsIHBvbGlvLCBldGMNCg0KKiAqKlByZXZhbG5jZSBvZiBEaWFycmhlb2EqKjogVGhlIG9jY3VyYW5jZSBvZiBkaWFycmhlb2EgaXMgMTAlIGluIE9kaXNoYSwgd2l0aCBpdCBiZWluZyBtb3N0IHByZXZhbGVudCBpbiBLZW5kdWpoYXIsIHdpdGggMjElIG9jY3VyYW5jZXMgYW5kIGxlYXN0IHByZXZhbGVudCBpbiBCYXJnYXJoIGF0IDElDQoNCiogKipJbmZhbnRzIHJlY2lldmluZyBhZGVxdWF0ZSBkaWV0KiogOiBUaGlzIGRlcGljdHMgY2hpbGRyZW4gYmV0d2VlbiA2LTIzIG1vbnRocyB3aG8gYXJlIHJlY2VpbmcgYWRlcXVhdGUgZGlldC4gb25seSA4LjUlIGluZmFudHMgcmVjaWV2ZSBhZGVxdWF0ZSBkaWV0IGluIE9kaXNoYSwgd2l0aCBpdCBiZWluZyAxNiUgaW4gZGlzdHJpY3QgUHVyaSBhbmQgMiUgaW4gZGlzdHJpY3QgTnVhcGFkYSANCg0KKiAqKkdyb3d0aCBkZWZpY2llbmN5IGFtb25nIGNoaWxkcmVuKio6IENoaWxkcmVuIHVuZGVyIGFnZSA1IHdobyBhcmUgc2V2ZXJseSB3YXN0ZWQod2VpZ2h0IGZvciBoZWlnaHQpLCB3YXN0ZWQod2VpZ2h0IGZvciBoZWlnaHQpLCBzdHVudGVkKGhlaWdodCBmb3IgYWdlKSBhbmQgdW5kZXJ3ZWlnaHQod2VpZ2h0IGZvciBhZ2UpIGFyZSBhY2NvdW50ZWQgdW5kZXIgdGhpcyBjYXRlZ29yeS4gVGhlIGhpZ2hlc3QgZ3Jvd3RoIGRlaWZpY2llbmN5IGlzIGluIGRpc3RyaWN0IE5hYmFyYW5nYXB1ciBhbmQgbG93ZXN0IGluIEN1dHRhY2suIA0KDQoqICoqUG9wdWxhdGlvbiB0aGF0IGlzIG92ZXJ3ZWlnaHQgb3Igb2Jlc2UqKjogRGlzdHJpY3QgS2hvcmRhIGhhcyB0aGUgaGlnaGVzdCBwZXJjZW50YWdlIG9mIHBlb3BsZSBpbiB0aGUgY2F0ZWdvcnksIGFuZCBNYWxrYW5naXJpIHRoZSBsb3dlc3QuIEV2ZW4gdGhvdWdoLCBiZWluZyBvYmVzZS9vdmVyd2VpZ2h0IGlzIGEgc2lnbiBvZiBpbGwtaGVhbHRoLCBpdCBpcyBhIHBvaW50ZXIgdG8gcHJvc3Blcml0eS4gDQoNCg0KKioqDQo=