diff --git a/i2p2www/translations/id/LC_MESSAGES/about.po b/i2p2www/translations/id/LC_MESSAGES/about.po
new file mode 100644
index 0000000000000000000000000000000000000000..f1a8d084f818dbc5182a4fce1d42752afada9ee3
--- /dev/null
+++ b/i2p2www/translations/id/LC_MESSAGES/about.po
@@ -0,0 +1,2332 @@
+# Indonesian translations for I2P.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the I2P project.
+#
+# Translators:
+# Khairul Agasta <khairuldroids@gmail.com>, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version:  I2P\n"
+"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
+"POT-Creation-Date: 2014-07-26 02:42+0000\n"
+"PO-Revision-Date: 2014-08-12 06:05+0000\n"
+"Last-Translator: Khairul Agasta <khairuldroids@gmail.com>\n"
+"Language-Team: Indonesian "
+"(http://www.transifex.com/projects/p/I2P/language/id/)\n"
+"Plural-Forms: nplurals=1; plural=0\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 1.3\n"
+
+#: i2p2www/pages/site/about/browser-config.html:2
+msgid "Web Browser Configuration"
+msgstr "Konfigurasi Peramban Web"
+
+#: i2p2www/pages/site/about/browser-config.html:5
+msgid ""
+"Your web browser will need to be configured in order to browse eepsites "
+"and to\n"
+"utilize the outproxies available within I2P. Below are walkthroughs for "
+"some of\n"
+"the most popular browsers."
+msgstr ""
+"Peramban web Anda akan perlu dikonfigurasikan agar dapat menjelajahi "
+"eepsites dan\n"
+"menggunakan outproxy yang tersedia didalam I2P. Dibawah ini adalah "
+"walkthrough untuk beberapa macam\n"
+"peramban yang populer."
+
+#: i2p2www/pages/site/about/browser-config.html:11
+msgid "How to configure your browser"
+msgstr "Bagaimana mengkonfigurasikan peramban Anda"
+
+#: i2p2www/pages/site/about/browser-config.html:17
+#: i2p2www/pages/site/about/browser-config.html:70
+msgid "Outproxy Terms Of Service"
+msgstr "Ketentuan Layanan Outproxy"
+
+#: i2p2www/pages/site/about/browser-config.html:22
+msgid "Internet Explorer 8 or Chrome"
+msgstr "Internet Explorer 8 atau Chrome"
+
+#: i2p2www/pages/site/about/browser-config.html:23
+msgid ""
+"In the tools menu select the \"Internet Options\" line to open the "
+"settings. In the\n"
+"settings window choose the connections tab and click on LAN settings for "
+"the\n"
+"proxy port configuration."
+msgstr ""
+"Dalam menu tools pilih baris \"Internet Options\" untuk membuka "
+"pengaturan. Dalam\n"
+"jendela pengaturan pilih tab connections lalu klik pada LAN settings "
+"untuk\n"
+"konfigurasi port proxy."
+
+#: i2p2www/pages/site/about/browser-config.html:28
+msgid "IE Internet Options"
+msgstr "Opsi Internet IE"
+
+#: i2p2www/pages/site/about/browser-config.html:29
+msgid ""
+"Now set the checkmark at \"use a proxy server for your LAN\" and at the "
+"\"Bypass\n"
+"proxy server for local addresses\". With a click on Advanced-button you "
+"open the\n"
+"window to open the ports. Enter the values like on the picture, IP "
+"127.0.0.1\n"
+"and port 4444 for HTTP, port 4445 for HTTPS. With clicks on OK you save "
+"the\n"
+"settings and your browser is set to use the I2P proxy."
+msgstr ""
+"Sekarang tandai pada \"use a proxy server for your LAN\" dan pada "
+"\"Bypass\n"
+"proxy server for local addresses\". Dengan mengklik tombol Advanced Anda "
+"membuka\n"
+"jendela untuk membuka port. Masukkan value seperti pada gambar, IP "
+"127.0.0.1\n"
+"dan port 4444 untuk HTTP, port 4445 untuk HTTPS. Dengan mengklik OK Anda "
+"menyimpan\n"
+"pengaturan dan peramban Anda sudah disetel untuk menggunakan proxy I2P."
+
+#: i2p2www/pages/site/about/browser-config.html:36
+msgid "IE Proxy Settings"
+msgstr "Pengaturan Proxy IE"
+
+#: i2p2www/pages/site/about/browser-config.html:40
+msgid ""
+"From the Tools menu, select Options to bring up the Firefox settings "
+"panel.\n"
+"Click the icon labelled <em>Advanced</em>, then click on the "
+"<em>Network</em>\n"
+"tab. In the <em>Connections</em> section, click on the Settings button. "
+"You'll\n"
+"see a Window like the following:"
+msgstr ""
+"Dari menu Tools, pilih Options untuk membuka panel pengaturan Firefox.\n"
+"Klik icon berlabel <em>Advanced</em>, kemudian klik tab <em>Network</em>."
+"\n"
+"Pada bagian <em>Connections</em>, klik tombol Settings. Anda akan\n"
+"melihat jendela seperti berikut:"
+
+#: i2p2www/pages/site/about/browser-config.html:46
+msgid "Firefox Network Options"
+msgstr "Opsi Jaringan Firefox"
+
+#: i2p2www/pages/site/about/browser-config.html:47
+msgid ""
+"In the <em>Connection Settings</em> window, click the circle next to "
+"<em>Manual\n"
+"    proxy configuration</em>, then enter 127.0.0.1, port 4444 in the HTTP"
+" Proxy\n"
+"field.  Enter 127.0.0.1, port 4445 in the SSL Proxy field.\n"
+"Be sure to enter localhost and 127.0.0.1 into the \"No Proxy for\" box."
+msgstr ""
+"Dalam jendela <em>Connection Settings</em>, klik lingkaran dekat "
+"<em>Manual\n"
+"proxy configuration</em>, kemudian masukkan 127.0.0.1, port 4444 dalam "
+"field\n"
+"HTTP Proxy. Masukkan 127.0.0.1, port 4445 dalam field SSL Proxy.\n"
+"Pastikan untuk  memasukkan localhost dan 127.0.0.1 kedalam box \"No Proxy"
+" for\"."
+
+#: i2p2www/pages/site/about/browser-config.html:53
+msgid "Firefox Proxy Settings"
+msgstr "Pengaturan Proxy Firefox"
+
+#: i2p2www/pages/site/about/browser-config.html:57
+msgid ""
+"From the <em>Settings</em> menu, select <em>Configure Konqueror</em>. In "
+"the\n"
+"Web Browsing group on the left side, select Proxy, then select the option"
+" \"Use manually specified proxy\n"
+"configuration\" on the right."
+msgstr ""
+"Dari menu <em>Settings</em>, pilih <em>Configure Konqueror</em>. Dalam\n"
+"grup Web Browsing pada sisi kiri, pilih Proxy, kemudian pilih opsi \"Use "
+"manually specified proxy\n"
+"configuration\" di sisi kanan."
+
+#: i2p2www/pages/site/about/browser-config.html:62
+msgid "Konqueror Proxy Options"
+msgstr "Opsi Proxy Konqueror"
+
+#: i2p2www/pages/site/about/browser-config.html:63
+msgid ""
+"Enter 127.0.0.1 and port 4444 into the HTTP box. Enter 127.0.0.1 and port"
+" 4445 into\n"
+"HTTPS box. Enter <code>127.0.0.1,localhost</code> into the Exceptions "
+"box. Click Apply then OK\n"
+"to close the configuration window."
+msgstr ""
+"Masukkan 127.0.0.1 dan port 4444 kedalam box HTTP. Masukkan 127.0.0.1 dan"
+" port 4445 kedalam\n"
+"box HTTPS. Masukkan <code>127.0.0.1,localhost</code> kedalam box "
+"Exceptions. Klik Apply kemudian OK\n"
+"untuk menutup jendela konfigurasi."
+
+#: i2p2www/pages/site/about/browser-config.html:71
+msgid ""
+"Remember: I2P was not designed for creating proxies to the outer "
+"Internet.\n"
+"Instead, it is meant to be used as an internal network."
+msgstr ""
+"Ingat: I2P tidak dirancang untuk membuat proxy ke Internet luar.\n"
+"Malahan, hal ini dimaksudkan untuk digunakan sebagai sebuah jaringan "
+"internal."
+
+#: i2p2www/pages/site/about/browser-config.html:75
+msgid ""
+"<b>The I2P project itself does not run any proxies to the Internet. Any "
+"such proxy\n"
+"services are run by by private volunteers and could be shut down or\n"
+"unreachable at anytime.</b>"
+msgstr ""
+"<b>Proyek I2P sendiri tidak menjalankan proxy apapun ke Internet. "
+"Berbagai layanan\n"
+"proxy seperti itu dijalankan oleh relawan pribadi dan tidak dapat "
+"dimatikan\n"
+"ataupun tidak dapat dicapai kapanpun.</b>"
+
+#: i2p2www/pages/site/about/browser-config.html:80
+#, python-format
+msgid ""
+"By default, I2P comes with two outproxies configured: "
+"<code>%(http)s</code>\n"
+"(an HTTP-only proxy) and <code>%(https)s</code> (an HTTPS proxy\n"
+"routed through Tor."
+msgstr ""
+"Dengan default, I2P datang bersama dua outproxy terkonfigurasi: "
+"<code>%(http)s</code>\n"
+"(sebuah proxy hanya-HTTP) dan <code>%(https)s</code> (sebuah proxy HTTPS\n"
+"yang diarahkan melalui Tor)."
+
+#: i2p2www/pages/site/about/browser-config.html:85
+msgid ""
+"Both of these outproxies are configured with connection limits. This "
+"means\n"
+"that only set amount of accesses are allowed per client. Once the limit "
+"is\n"
+"reached, the client is blocked out for a timeframe of 1min/1h/1 day. Be\n"
+"respectful and do not overload these services with too many requests!"
+msgstr ""
+"Kedua outproxy tersebut dikonfigurasikan dengan batasan koneksi. Ini "
+"artinya\n"
+"hanya jumlah akses tertentu yang diizinkan per klien. Ketika batasan "
+"sudah\n"
+"dicapai, klien diblok untuk frame waktu 1min/1h/1 hari. Hormatilah dan "
+"jangan\n"
+"memuat secara berlebih pada layanan tersebut dengan banyak permintaan!"
+
+#: i2p2www/pages/site/about/browser-config.html:91
+msgid ""
+"Filtering is active on these outproxies (for example, mibbit and torrent\n"
+"tracker access is blocked). Eepsites\n"
+"that are accessible via .i2p addresses are also not allowed via the "
+"outproxies.\n"
+"As a convenience, <code>false.i2p</code> blocks ad servers."
+msgstr ""
+"Penyaringan sudah aktif pada outproxy tersbut (sebagai contoh, akses\n"
+"tracker mibbit dan torrent diblokir). Eepsites\n"
+"yang dapat diakses melalui alamat .i2p juga tidak diizinkan melalui "
+"outproxy.\n"
+"Sebagai bentuk kenyamanan, <code>false.i2p</code> memblokir server "
+"periklanan."
+
+#: i2p2www/pages/site/about/browser-config.html:97
+msgid ""
+"<a href=\"https://www.torproject.org\">Tor</a> is good application to use"
+" as an\n"
+"outproxy to the Internet."
+msgstr ""
+"<a href=\"https://www.torproject.org\">Tor</a> adalah aplikasi baik untuk"
+" digunakan\n"
+"sebagai sebuah outpxory ke Internet."
+
+#: i2p2www/pages/site/about/glossary.html:2
+msgid "Glossary"
+msgstr "Glosarium"
+
+#: i2p2www/pages/site/about/glossary.html:4
+msgid ""
+"This page lists often-used terminology when discussing I2P and "
+"cryptography."
+msgstr ""
+"Halaman ini menampilkan terminologi yang sering digunakan ketika "
+"mendiskusikan I2P dan kriptografi."
+
+#: i2p2www/pages/site/about/hall-of-fame.html:2
+msgid "Hall Of Fame"
+msgstr "Hall Of Fame"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:5
+#, python-format
+msgid "Current balance: as of %(date)s"
+msgstr "Saldo saat ini: per %(date)s"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:8
+#: i2p2www/pages/site/about/hall-of-fame.html:44
+#: i2p2www/pages/site/about/hall-of-fame.html:311
+#: i2p2www/pages/site/about/hall-of-fame.html:312
+#: i2p2www/pages/site/about/hall-of-fame.html:313
+#: i2p2www/pages/site/about/hall-of-fame.html:314
+#: i2p2www/pages/site/about/hall-of-fame.html:316
+#: i2p2www/pages/site/about/hall-of-fame.html:317
+#: i2p2www/pages/site/about/hall-of-fame.html:318
+#: i2p2www/pages/site/about/hall-of-fame.html:321
+#: i2p2www/pages/site/about/hall-of-fame.html:322
+#: i2p2www/pages/site/about/hall-of-fame.html:323
+#: i2p2www/pages/site/about/hall-of-fame.html:326
+#: i2p2www/pages/site/about/hall-of-fame.html:327
+#: i2p2www/pages/site/about/hall-of-fame.html:328
+#: i2p2www/pages/site/about/hall-of-fame.html:329
+#: i2p2www/pages/site/about/hall-of-fame.html:330
+#: i2p2www/pages/site/about/hall-of-fame.html:331
+#: i2p2www/pages/site/about/hall-of-fame.html:332
+#: i2p2www/pages/site/about/hall-of-fame.html:333
+#: i2p2www/pages/site/about/hall-of-fame.html:334
+#: i2p2www/pages/site/about/hall-of-fame.html:335
+#: i2p2www/pages/site/about/hall-of-fame.html:336
+#: i2p2www/pages/site/about/hall-of-fame.html:337
+#: i2p2www/pages/site/about/hall-of-fame.html:338
+#: i2p2www/pages/site/about/hall-of-fame.html:341
+#: i2p2www/pages/site/about/hall-of-fame.html:342
+#: i2p2www/pages/site/about/hall-of-fame.html:343
+#: i2p2www/pages/site/about/hall-of-fame.html:344
+#: i2p2www/pages/site/about/hall-of-fame.html:345
+#: i2p2www/pages/site/about/hall-of-fame.html:346
+#: i2p2www/pages/site/about/hall-of-fame.html:348
+#: i2p2www/pages/site/about/hall-of-fame.html:349
+#: i2p2www/pages/site/about/hall-of-fame.html:352
+#: i2p2www/pages/site/about/hall-of-fame.html:353
+#: i2p2www/pages/site/about/hall-of-fame.html:354
+#: i2p2www/pages/site/about/hall-of-fame.html:355
+#: i2p2www/pages/site/about/hall-of-fame.html:356
+#: i2p2www/pages/site/about/hall-of-fame.html:358
+#: i2p2www/pages/site/about/hall-of-fame.html:359
+#: i2p2www/pages/site/about/hall-of-fame.html:360
+#: i2p2www/pages/site/about/hall-of-fame.html:361
+#: i2p2www/pages/site/about/hall-of-fame.html:362
+#: i2p2www/pages/site/about/hall-of-fame.html:363
+#: i2p2www/pages/site/about/hall-of-fame.html:365
+#: i2p2www/pages/site/about/hall-of-fame.html:366
+#: i2p2www/pages/site/about/hall-of-fame.html:367
+#: i2p2www/pages/site/about/hall-of-fame.html:368
+#: i2p2www/pages/site/about/hall-of-fame.html:370
+#: i2p2www/pages/site/about/hall-of-fame.html:371
+#: i2p2www/pages/site/about/hall-of-fame.html:372
+#: i2p2www/pages/site/about/hall-of-fame.html:373
+#: i2p2www/pages/site/about/hall-of-fame.html:374
+#: i2p2www/pages/site/about/hall-of-fame.html:377
+#: i2p2www/pages/site/about/hall-of-fame.html:378
+#: i2p2www/pages/site/about/hall-of-fame.html:379
+#: i2p2www/pages/site/about/hall-of-fame.html:380
+#: i2p2www/pages/site/about/hall-of-fame.html:382
+#: i2p2www/pages/site/about/hall-of-fame.html:383
+#: i2p2www/pages/site/about/hall-of-fame.html:384
+#: i2p2www/pages/site/about/hall-of-fame.html:386
+#: i2p2www/pages/site/about/hall-of-fame.html:387
+#: i2p2www/pages/site/about/hall-of-fame.html:388
+#: i2p2www/pages/site/about/hall-of-fame.html:389
+#: i2p2www/pages/site/about/hall-of-fame.html:391
+#: i2p2www/pages/site/about/hall-of-fame.html:392
+#: i2p2www/pages/site/about/hall-of-fame.html:393
+#: i2p2www/pages/site/about/hall-of-fame.html:394
+#: i2p2www/pages/site/about/hall-of-fame.html:395
+#: i2p2www/pages/site/about/hall-of-fame.html:401
+#: i2p2www/pages/site/about/hall-of-fame.html:404
+#: i2p2www/pages/site/about/hall-of-fame.html:405
+#: i2p2www/pages/site/about/hall-of-fame.html:406
+#: i2p2www/pages/site/about/hall-of-fame.html:407
+#: i2p2www/pages/site/about/hall-of-fame.html:408
+#: i2p2www/pages/site/about/hall-of-fame.html:410
+#: i2p2www/pages/site/about/hall-of-fame.html:411
+#: i2p2www/pages/site/about/hall-of-fame.html:412
+#: i2p2www/pages/site/about/hall-of-fame.html:417
+#: i2p2www/pages/site/about/hall-of-fame.html:418
+#: i2p2www/pages/site/about/hall-of-fame.html:419
+#: i2p2www/pages/site/about/hall-of-fame.html:420
+#: i2p2www/pages/site/about/hall-of-fame.html:421
+#: i2p2www/pages/site/about/hall-of-fame.html:422
+#: i2p2www/pages/site/about/hall-of-fame.html:423
+#: i2p2www/pages/site/about/hall-of-fame.html:424
+#: i2p2www/pages/site/about/hall-of-fame.html:425
+#: i2p2www/pages/site/about/hall-of-fame.html:426
+#: i2p2www/pages/site/about/hall-of-fame.html:428
+#: i2p2www/pages/site/about/hall-of-fame.html:429
+#: i2p2www/pages/site/about/hall-of-fame.html:439
+#: i2p2www/pages/site/about/hall-of-fame.html:440
+#: i2p2www/pages/site/about/hall-of-fame.html:441
+#: i2p2www/pages/site/about/hall-of-fame.html:442
+#: i2p2www/pages/site/about/hall-of-fame.html:443
+#: i2p2www/pages/site/about/hall-of-fame.html:444
+#: i2p2www/pages/site/about/hall-of-fame.html:445
+#: i2p2www/pages/site/about/hall-of-fame.html:446
+#: i2p2www/pages/site/about/hall-of-fame.html:447
+#: i2p2www/pages/site/about/hall-of-fame.html:448
+#: i2p2www/pages/site/about/hall-of-fame.html:449
+#: i2p2www/pages/site/about/hall-of-fame.html:450
+#: i2p2www/pages/site/about/hall-of-fame.html:451
+#: i2p2www/pages/site/about/hall-of-fame.html:452
+#: i2p2www/pages/site/about/hall-of-fame.html:453
+#: i2p2www/pages/site/about/hall-of-fame.html:454
+#: i2p2www/pages/site/about/hall-of-fame.html:455
+#: i2p2www/pages/site/about/hall-of-fame.html:456
+#: i2p2www/pages/site/about/hall-of-fame.html:457
+#: i2p2www/pages/site/about/hall-of-fame.html:458
+#: i2p2www/pages/site/about/hall-of-fame.html:459
+#: i2p2www/pages/site/about/hall-of-fame.html:463
+#: i2p2www/pages/site/about/hall-of-fame.html:464
+#: i2p2www/pages/site/about/hall-of-fame.html:465
+#: i2p2www/pages/site/about/hall-of-fame.html:466
+#: i2p2www/pages/site/about/hall-of-fame.html:467
+#: i2p2www/pages/site/about/hall-of-fame.html:468
+#: i2p2www/pages/site/about/hall-of-fame.html:469
+#: i2p2www/pages/site/about/hall-of-fame.html:471
+#: i2p2www/pages/site/about/hall-of-fame.html:472
+#: i2p2www/pages/site/about/hall-of-fame.html:473
+#: i2p2www/pages/site/about/hall-of-fame.html:474
+#: i2p2www/pages/site/about/hall-of-fame.html:475
+#: i2p2www/pages/site/about/hall-of-fame.html:476
+#: i2p2www/pages/site/about/hall-of-fame.html:477
+#: i2p2www/pages/site/about/hall-of-fame.html:478
+#: i2p2www/pages/site/about/hall-of-fame.html:479
+#: i2p2www/pages/site/about/hall-of-fame.html:482
+#: i2p2www/pages/site/about/hall-of-fame.html:483
+#: i2p2www/pages/site/about/hall-of-fame.html:484
+#: i2p2www/pages/site/about/hall-of-fame.html:485
+#: i2p2www/pages/site/about/hall-of-fame.html:486
+#: i2p2www/pages/site/about/hall-of-fame.html:488
+#: i2p2www/pages/site/about/hall-of-fame.html:490
+#: i2p2www/pages/site/about/hall-of-fame.html:491
+#: i2p2www/pages/site/about/hall-of-fame.html:492
+#: i2p2www/pages/site/about/hall-of-fame.html:493
+#: i2p2www/pages/site/about/hall-of-fame.html:494
+#: i2p2www/pages/site/about/hall-of-fame.html:495
+#: i2p2www/pages/site/about/hall-of-fame.html:496
+#: i2p2www/pages/site/about/hall-of-fame.html:498
+#: i2p2www/pages/site/about/hall-of-fame.html:499
+#: i2p2www/pages/site/about/hall-of-fame.html:500
+#: i2p2www/pages/site/about/hall-of-fame.html:501
+#: i2p2www/pages/site/about/hall-of-fame.html:502
+#: i2p2www/pages/site/about/hall-of-fame.html:503
+#: i2p2www/pages/site/about/hall-of-fame.html:504
+#: i2p2www/pages/site/about/hall-of-fame.html:505
+#: i2p2www/pages/site/about/hall-of-fame.html:506
+#: i2p2www/pages/site/about/hall-of-fame.html:507
+#: i2p2www/pages/site/about/hall-of-fame.html:508
+#: i2p2www/pages/site/about/hall-of-fame.html:509
+#: i2p2www/pages/site/about/hall-of-fame.html:510
+#: i2p2www/pages/site/about/hall-of-fame.html:511
+#: i2p2www/pages/site/about/hall-of-fame.html:513
+#: i2p2www/pages/site/about/hall-of-fame.html:514
+#: i2p2www/pages/site/about/hall-of-fame.html:515
+#: i2p2www/pages/site/about/hall-of-fame.html:518
+#: i2p2www/pages/site/about/hall-of-fame.html:519
+#: i2p2www/pages/site/about/hall-of-fame.html:522
+#: i2p2www/pages/site/about/hall-of-fame.html:523
+#: i2p2www/pages/site/about/hall-of-fame.html:525
+#: i2p2www/pages/site/about/hall-of-fame.html:526
+#: i2p2www/pages/site/about/hall-of-fame.html:539
+#: i2p2www/pages/site/about/hall-of-fame.html:540
+#: i2p2www/pages/site/about/hall-of-fame.html:541
+#: i2p2www/pages/site/about/hall-of-fame.html:542
+#: i2p2www/pages/site/about/hall-of-fame.html:543
+#: i2p2www/pages/site/about/hall-of-fame.html:544
+#: i2p2www/pages/site/about/hall-of-fame.html:545
+#: i2p2www/pages/site/about/hall-of-fame.html:546
+#: i2p2www/pages/site/about/hall-of-fame.html:547
+#: i2p2www/pages/site/about/hall-of-fame.html:548
+#: i2p2www/pages/site/about/hall-of-fame.html:549
+#: i2p2www/pages/site/about/hall-of-fame.html:550
+#: i2p2www/pages/site/about/hall-of-fame.html:551
+#: i2p2www/pages/site/about/hall-of-fame.html:552
+#: i2p2www/pages/site/about/hall-of-fame.html:553
+#: i2p2www/pages/site/about/hall-of-fame.html:554
+#: i2p2www/pages/site/about/hall-of-fame.html:555
+#: i2p2www/pages/site/about/hall-of-fame.html:556
+#: i2p2www/pages/site/about/hall-of-fame.html:557
+#: i2p2www/pages/site/about/hall-of-fame.html:558
+#: i2p2www/pages/site/about/hall-of-fame.html:559
+#: i2p2www/pages/site/about/hall-of-fame.html:560
+#: i2p2www/pages/site/about/hall-of-fame.html:561
+#: i2p2www/pages/site/about/hall-of-fame.html:562
+#: i2p2www/pages/site/about/hall-of-fame.html:563
+#: i2p2www/pages/site/about/hall-of-fame.html:564
+#: i2p2www/pages/site/about/hall-of-fame.html:565
+#: i2p2www/pages/site/about/hall-of-fame.html:566
+#: i2p2www/pages/site/about/hall-of-fame.html:567
+#: i2p2www/pages/site/about/hall-of-fame.html:568
+#: i2p2www/pages/site/about/hall-of-fame.html:569
+#: i2p2www/pages/site/about/hall-of-fame.html:570
+#: i2p2www/pages/site/about/hall-of-fame.html:571
+#: i2p2www/pages/site/about/hall-of-fame.html:572
+#: i2p2www/pages/site/about/hall-of-fame.html:573
+#: i2p2www/pages/site/about/hall-of-fame.html:575
+#: i2p2www/pages/site/about/hall-of-fame.html:576
+#: i2p2www/pages/site/about/hall-of-fame.html:577
+#: i2p2www/pages/site/about/hall-of-fame.html:578
+#: i2p2www/pages/site/about/hall-of-fame.html:579
+#: i2p2www/pages/site/about/hall-of-fame.html:580
+#: i2p2www/pages/site/about/hall-of-fame.html:581
+#: i2p2www/pages/site/about/hall-of-fame.html:582
+#: i2p2www/pages/site/about/hall-of-fame.html:584
+#: i2p2www/pages/site/about/hall-of-fame.html:585
+#: i2p2www/pages/site/about/hall-of-fame.html:586
+#: i2p2www/pages/site/about/hall-of-fame.html:588
+#: i2p2www/pages/site/about/hall-of-fame.html:589
+#: i2p2www/pages/site/about/hall-of-fame.html:590
+#: i2p2www/pages/site/about/hall-of-fame.html:591
+#: i2p2www/pages/site/about/hall-of-fame.html:592
+#: i2p2www/pages/site/about/hall-of-fame.html:594
+#: i2p2www/pages/site/about/hall-of-fame.html:597
+#: i2p2www/pages/site/about/hall-of-fame.html:598
+#: i2p2www/pages/site/about/hall-of-fame.html:599
+#: i2p2www/pages/site/about/hall-of-fame.html:600
+#: i2p2www/pages/site/about/hall-of-fame.html:601
+#: i2p2www/pages/site/about/hall-of-fame.html:602
+#: i2p2www/pages/site/about/hall-of-fame.html:603
+#: i2p2www/pages/site/about/hall-of-fame.html:604
+#: i2p2www/pages/site/about/hall-of-fame.html:605
+#: i2p2www/pages/site/about/hall-of-fame.html:606
+#: i2p2www/pages/site/about/hall-of-fame.html:607
+#: i2p2www/pages/site/about/hall-of-fame.html:608
+#: i2p2www/pages/site/about/hall-of-fame.html:609
+#: i2p2www/pages/site/about/hall-of-fame.html:610
+#: i2p2www/pages/site/about/hall-of-fame.html:612
+#: i2p2www/pages/site/about/hall-of-fame.html:613
+#: i2p2www/pages/site/about/hall-of-fame.html:614
+#: i2p2www/pages/site/about/hall-of-fame.html:616
+#: i2p2www/pages/site/about/hall-of-fame.html:619
+#: i2p2www/pages/site/about/hall-of-fame.html:620
+#: i2p2www/pages/site/about/hall-of-fame.html:621
+#: i2p2www/pages/site/about/hall-of-fame.html:622
+#: i2p2www/pages/site/about/hall-of-fame.html:623
+#: i2p2www/pages/site/about/hall-of-fame.html:624
+#: i2p2www/pages/site/about/hall-of-fame.html:625
+#: i2p2www/pages/site/about/hall-of-fame.html:626
+#: i2p2www/pages/site/about/hall-of-fame.html:627
+#: i2p2www/pages/site/about/hall-of-fame.html:628
+#: i2p2www/pages/site/about/hall-of-fame.html:629
+#: i2p2www/pages/site/about/hall-of-fame.html:630
+#: i2p2www/pages/site/about/hall-of-fame.html:631
+#: i2p2www/pages/site/about/hall-of-fame.html:632
+#: i2p2www/pages/site/about/hall-of-fame.html:633
+#: i2p2www/pages/site/about/hall-of-fame.html:634
+#: i2p2www/pages/site/about/hall-of-fame.html:635
+#: i2p2www/pages/site/about/hall-of-fame.html:636
+#: i2p2www/pages/site/about/hall-of-fame.html:637
+#: i2p2www/pages/site/about/hall-of-fame.html:639
+#: i2p2www/pages/site/about/hall-of-fame.html:640
+#: i2p2www/pages/site/about/hall-of-fame.html:641
+msgid "General fund"
+msgstr "Dana umum"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:9
+#: i2p2www/pages/site/about/hall-of-fame.html:11
+#: i2p2www/pages/site/about/hall-of-fame.html:17
+#, python-format
+msgid "%(euroval)s &euro; and %(btcval)s BTC"
+msgstr "%(euroval)s &euro; dan %(btcval)s BTC"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:10
+msgid "Datastorage bounty"
+msgstr "Datastorage bounty"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:12
+msgid "I2PHex bounty"
+msgstr "I2PHex bounty"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:13
+#: i2p2www/pages/site/about/hall-of-fame.html:15
+#: i2p2www/pages/site/about/hall-of-fame.html:19
+#, python-format
+msgid "%(euroval)s &euro;"
+msgstr "%(euroval)s &euro;"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:14
+msgid "I2P in debian mirrors"
+msgstr "I2P dalam mirror debian"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:16
+msgid "Bitcoin client for I2P"
+msgstr "Klien bitcoin untuk I2P"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:18
+msgid "Unit Tests for I2P router"
+msgstr "Unit Pengujian untuk router I2P"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:20
+msgid "Bounty Robert"
+msgstr "Bounty Robert"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:21
+msgid "Bounty Syndie"
+msgstr "Bounty Syndie"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:22
+msgid "Bounty I2P for CCR Microtic Board"
+msgstr "Bounty I2P untuk CCR Microtic Board"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:25
+msgid "Current monthly running costs:"
+msgstr "Biaya berjalan bulanan saat ini:"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:36
+msgid "Big thanks go to the following people who have donated to I2P!"
+msgstr ""
+"Terima kasih yang sebesar-besarnya kepada mereka yang telah mendonasikan "
+"ke I2P!"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:37
+#, python-format
+msgid ""
+"If you have made a donation, please send an email to <a "
+"href=\"mailto:%(echelon)s\">echelon</a>\n"
+"with your name or nick (and optionally homepage) so we can list you here."
+msgstr ""
+"Jika Anda telah melakukan donasi, silahkan kirimkan email ke <a "
+"href=\"mailto:%(echelon)s\">echelon</a>\n"
+"dengan nama atau alias Anda (dan beranda opsional) jadi kami dapat "
+"mendaftarkan Anda disini."
+
+#: i2p2www/pages/site/about/hall-of-fame.html:42
+msgid "Current monthly subscriptions:"
+msgstr "Langganan bulanan saat ini:"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:48
+msgid "2014 donations and costs:"
+msgstr "2014 donasi dan biaya:"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:131
+msgid "2013 donations and costs:"
+msgstr "2013 donasi dan biaya:"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:308
+msgid "2012 donations and costs:"
+msgstr "2012 donasi dan biaya:"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:436
+msgid "2011 donations and costs:"
+msgstr "2011 donasi dan biaya:"
+
+#: i2p2www/pages/site/about/hall-of-fame.html:537
+msgid "Previous to 2011 donations:"
+msgstr "Donasi sebelumnya sampai 2011:"
+
+#: i2p2www/pages/site/about/intro.html:2
+msgid "Intro"
+msgstr "Intro"
+
+#: i2p2www/pages/site/about/intro.html:4
+msgid "The Invisible Internet Project"
+msgstr "The Invisible Internet Project"
+
+#: i2p2www/pages/site/about/intro.html:5
+#, python-format
+msgid ""
+"I2P is an anonymous network, exposing a simple layer that applications "
+"can \n"
+"use to anonymously and securely send messages to each other. The network "
+"itself is \n"
+"strictly message based (a la <a href=\"%(ip)s\">IP</a>), but there is a \n"
+"library available to allow reliable streaming communication on top of it "
+"(a la \n"
+"<a href=\"%(tcp)s\">TCP</a>).  \n"
+"All communication is end to end encrypted (in total there are four layers"
+" of \n"
+"encryption used when sending a message), and even the end points "
+"(\"destinations\") \n"
+"are cryptographic identifiers (essentially a pair of <a "
+"href=\"%(pke)s\">public keys</a>)."
+msgstr ""
+"I2P adalah sebuah jaringan anonim, mengekspos lapisan sederhana yang "
+"aplikasi \n"
+"dapat gunakan untuk secara anonim dan aman mengirimkan pesan ke satu sama"
+" lain.\n"
+"Jaringan itu sendiri adalah semata-mata berbasis perpesanan (a la <a "
+"href=\"%(ip)s\">IP</a>), \n"
+"tetapi ada sebuah pustaka yang tersedia untuk memungkinkan komunikasi "
+"streaming \n"
+"yang dapat diandalkan diatasnya (a la <a href=\"%(tcp)s\">TCP</a>).\n"
+"Semua komunikasi dienkripsi akhir ke akhir (total terdapat empat lapisan"
+" \n"
+"enkripsi yang digunakan ketika mengirim sebuah pesan), dan bahkan titik "
+"akhirnya (\"tujuan\") \n"
+"adalah pengidentifikasi kriptografik (pada dasarnya sepasang <a "
+"href=\"%(pke)s\">public keys</a>)."
+
+#: i2p2www/pages/site/about/intro.html:18
+msgid "How does it work?"
+msgstr "Bagaiman cara kerjanya?"
+
+#: i2p2www/pages/site/about/intro.html:20
+#, python-format
+msgid ""
+"To anonymize the messages sent, each client application has their I2P "
+"\"router\"\n"
+"build a few inbound and outbound \"<a "
+"href=\"%(tunnelrouting)s\">tunnels</a>\" - a \n"
+"sequence of peers that pass messages in one direction (to and from the "
+"client, \n"
+"respectively).  In turn, when a client wants to send a message to another"
+" client, \n"
+"the client passes that message out one of their outbound tunnels "
+"targeting one of the \n"
+"other client's inbound tunnels, eventually reaching the destination.  "
+"Every \n"
+"participant in the network chooses the length of these tunnels, and in "
+"doing so, \n"
+"makes a tradeoff between anonymity, latency, and throughput according to "
+"their \n"
+"own needs.  The result is that the number of peers relaying each end to "
+"end \n"
+"message is the absolute minimum necessary to meet both the sender's and "
+"the \n"
+"receiver's threat model."
+msgstr ""
+"Untuk menganonimkan pesan yang dikirim, setiap klien aplikasi memiliki "
+"build \"router\"\n"
+"I2P masing-masing dengan beberapa inbound dan outbound \"<a "
+"href=\"%(tunnelrouting)s\">tunnels</a>\" - \n"
+"sebuah urutan peer yang melewati pesan dalam satu arah (ke dan dari "
+"klien, \n"
+"berturut-turut). Pada gilirannya, ketika klien ingin mengirim pesan ke "
+"klien lain, \n"
+"klien akan melewati pesan itu dari salah satu outbound tunnels nya yang "
+"menargetkan \n"
+"satu dari klien inbound tunnels lain, dan akhirnya sampai ke tujuan. "
+"Setiap \n"
+"partisipan dalam jaringan memilih panjang tunnels tersebut, dan dalam "
+"melakukannya, \n"
+"membuat pertukaran diantara anonimitas, latency, dan throughput "
+"berdasarkan pada \n"
+"kebutuhan. Hasilnya adalah jumlah peers yang merelay setiap pesan akhir "
+"ke akhir \n"
+"adalah minimum absolut yang diperlukan untuk bertemu dengan kedua "
+"pengirim dan \n"
+"penerima model ancaman."
+
+#: i2p2www/pages/site/about/intro.html:34
+#, python-format
+msgid ""
+"The first time a client wants to contact another client, they make a "
+"query \n"
+"against the fully distributed \"<a href=\"%(netdb)s\">network \n"
+"database</a>\" - a custom structured <a href=\"%(dht)s\">\n"
+"distributed hash table (DHT)</a> based off the \n"
+"<a href=\"%(kad)s\">Kademlia algorithm</a>. This is done \n"
+"to find the other client's inbound tunnels efficiently, but subsequent "
+"messages \n"
+"between them usually includes that data so no further network database "
+"lookups \n"
+"are required."
+msgstr ""
+
+#: i2p2www/pages/site/about/intro.html:47
+#, python-format
+msgid "More details about how I2P works are <a href=\"%(docs)s\">available</a>."
+msgstr ""
+
+#: i2p2www/pages/site/about/intro.html:51
+msgid "What can you do with it?"
+msgstr ""
+
+#: i2p2www/pages/site/about/intro.html:53
+#, python-format
+msgid ""
+"Within the I2P network, applications are not restricted in how they can \n"
+"communicate - those that typically use UDP can make use of the base I2P \n"
+"functionality, and those that typically use TCP can use the TCP-like "
+"streaming\n"
+"library.  We have a generic TCP/I2P bridge application \n"
+"(\"<a href=\"%(i2ptunnel)s\">I2PTunnel</a>\") that enables people to "
+"forward TCP streams\n"
+"into the I2P network as well as to receive streams out of the network and"
+" \n"
+"forward them towards a specific TCP/IP address."
+msgstr ""
+
+#: i2p2www/pages/site/about/intro.html:63
+#, python-format
+msgid ""
+"I2PTunnel is currently used to let people run their own anonymous website"
+" \n"
+"(\"eepsite\") by running a normal webserver and pointing an I2PTunnel "
+"'server' \n"
+"at it, which people can access anonymously over I2P with a normal web "
+"browser \n"
+"by running an I2PTunnel HTTP proxy (\"eepproxy\").  In addition, we use "
+"the same \n"
+"technique to run an anonymous IRC network (where the IRC server is hosted"
+" \n"
+"anonymously, and standard IRC clients use an I2PTunnel to contact it).  "
+"There \n"
+"are other application development efforts going on as well, such as one "
+"to \n"
+"build an optimized swarming file transfer application (a la \n"
+"<a href=\"%(bittorrent)s\">BitTorrent</a>), a \n"
+"distributed data store (a la <a href=\"%(freenet)s\">Freenet</a> / \n"
+"<a href=\"%(mnet)s\">MNet</a>), and a blogging system (a fully \n"
+"distributed <a href=\"%(livejournal)s\">LiveJournal</a>), but those are \n"
+"not ready for use yet."
+msgstr ""
+
+#: i2p2www/pages/site/about/intro.html:82
+#, python-format
+msgid ""
+"I2P is not inherently an \"outproxy\" network - the client you send a "
+"message \n"
+"to is the cryptographic identifier, not some IP address, so the message "
+"must \n"
+"be addressed to someone running I2P.  However, it is possible for that "
+"client\n"
+"to be an outproxy, allowing you to anonymously make use of their Internet"
+" \n"
+"connection.  To demonstrate this, the \"eepproxy\" will accept normal "
+"non-I2P \n"
+"URLs (e.g. \"http://www.i2p.net\") and forward them to a specific "
+"destination\n"
+"that runs a <a href=\"%(squid)s\">squid</a> HTTP proxy, allowing \n"
+"simple anonymous browsing of the normal web.  Simple outproxies like that"
+" are \n"
+"not viable in the long run for several reasons (including the cost of "
+"running \n"
+"one as well as the anonymity and security issues they introduce), but in"
+" \n"
+"certain circumstances the technique could be appropriate."
+msgstr ""
+
+#: i2p2www/pages/site/about/intro.html:96
+#, python-format
+msgid ""
+"The I2P development <a href=\"%(team)s\">team</a> is an open group, "
+"welcome to all \n"
+"who are interested in <a href=\"%(volunteer)s\">getting involved</a>, and"
+" all of \n"
+"the code is <a href=\"%(licenses)s\">open source</a>.  The core I2P SDK "
+"and the \n"
+"current router implementation is done in Java (currently working with "
+"both \n"
+"sun and kaffe, gcj support planned for later), and there is a \n"
+"<a href=\"%(sam)s\">simple socket based API</a> for accessing the network"
+" from \n"
+"other languages (with a C library available, and both Python and Perl in"
+" \n"
+"development).  The network is actively being developed and has not yet "
+"reached \n"
+"the 1.0 release, but the current <a href=\"%(roadmap)s\">roadmap</a> "
+"describes \n"
+"our schedule."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:2
+msgid "Presentations on I2P"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:4
+#, python-format
+msgid ""
+"Following are links to presentations, videos, and tutorials about I2P. "
+"Links to research papers on I2P are available <a "
+"href=\"%(papers)s\">here</a>."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:7
+#, python-format
+msgid "To request an addition to this page, please send to %(email)s."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:10
+msgid ""
+"\n"
+"Newest links are at the bottom of each section."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:15
+msgid "Presentations"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:18
+#, python-format
+msgid ""
+"IIP Presentation at CodeCon\n"
+"<a href=\"%(mp3)s\">MP3 audio</a>\n"
+"<a href=\"%(transcript)s\">transcript</a>\n"
+"Lance James (0x90), February 2002."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:26
+#, python-format
+msgid ""
+"IIP Presentation at ToorCon\n"
+"<a href=\"%(mp3)s\">MP3 audio</a>\n"
+"<a href=\"%(slides)s\">slides</a>\n"
+"Lance James (0x90), September 2002."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:34
+#, python-format
+msgid ""
+"<a href=\"%(video)s\">To Be or I2P</a>\n"
+"(Youtube Video)\n"
+"An introduction into anonymous communication with I2P.\n"
+"<a href=\"%(pdf)s\">To Be or I2P (PDF presentation)</a>,\n"
+"Jens Kubieziel, 24C3 Berlin, December 28, 2007."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:43
+#, python-format
+msgid ""
+"<a href=\"%(video)s\">Video of I2P talk at Chemnitz Linux Tag</a>,\n"
+"Lars Schimmer,\n"
+"March 14-15, 2009"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:49
+#, python-format
+msgid ""
+"HOPE New York July 17, 2010 - Brief overview of I2P by zzz, at the end of"
+" Adrian Hong's talk\n"
+"\"Hackers for Human Rights\".\n"
+"<a href=\"%(mp3)s\">MP3 audio</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:55
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">Into the I2P Darknet: Welcome to Cipherspace</a>\n"
+"Adrian Crenshaw. Schmoocon Firetalk, January 2011"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:60
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">Using techhnology to advance liberty</a>\n"
+"(Youtube Video)\n"
+"Eric Johnson.\n"
+"<a href=\"http://agora.io/etienne\">Agora I/O Unconference</a>, March 27,"
+" 2011.\n"
+"I2P covered from 10:00 to 20:00 in the video."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:68
+#, python-format
+msgid ""
+"<a href=\"%(pdf)s\">The Bright side of darknets</a>, FOSSCOMM Patras May "
+"2011"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:72
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">Common Darknet Weaknesses</a>\n"
+"(Youtube Video)\n"
+"Adrian Crenshaw, <a href=\"http://aide.marshall.edu/\">AIDE</a>, July "
+"11-15, 2011."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:78
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">I2P / Tor Workshop Notes</a>\n"
+"Adrian Crenshaw. DEF CON 19, Las Vegas, August 6, 2011."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:83
+#, python-format
+msgid ""
+"<a href=\"%(live)s\">Cipherspaces/Darknets: An Overview Of Attack "
+"Strategies -\n"
+"DEF CON Live version (Youtube Video)</a>,\n"
+"<a href=\"%(studio)s\">\"Studio\" version (Youtube Video)</a>,\n"
+"<a href=\"%(slides)s\">Slides (ppt)</a>\n"
+"Adrian Crenshaw. DEF CON 19, Las Vegas, August 7, 2011."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:93
+msgid ""
+"<a href=\"http://0x375.org/\">Modern cipherspace ecosystems</a>, 0x375 "
+"0x06 (Thessaloniki Tech Talk Sessions), November 4, 2011."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:97
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">I2P - The Anonymous Network</a>\n"
+"(Youtube Video)\n"
+"Blair Dick, University of Abertay, Dundee Ethical Hacking Society, "
+"January 25, 2012."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:105
+msgid "Tutorials"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:108
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">I2P Windows Tutorial</a>\n"
+"(Youtube Video)\n"
+"This guide will show you how to install I2P in Windows XP.\n"
+"By <a href=\"http://telecomix.org/\">Telecomix</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:115
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">I2P Debian Tutorial</a>\n"
+"(Youtube Video)\n"
+"This will guide you through how to install I2P on a Debian Linux System.\n"
+"By <a href=\"http://telecomix.org/\">Telecomix</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:122
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">How to set up anonymous site in I2P</a>\n"
+"(Youtube Video)\n"
+"How to set up an anonymous web site in I2P.\n"
+"By <a href=\"http://telecomix.org/\">Telecomix</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:129
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">I2P Tutorial Mac OS X</a>\n"
+"(Youtube Video)\n"
+"A tutorial on how to run i2p on Mac OS X and how to connect to "
+"irc.telecomix.i2p.\n"
+"By <a href=\"http://telecomix.org/\">Telecomix</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:136
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">Felix Atari explains the basic principles of I2P</a>"
+"\n"
+"(Youtube Video)\n"
+"Agent Felix Atari of the Telecomix Crypto Munitions Bureau.\n"
+"By <a href=\"http://telecomix.org/\">Telecomix</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:143
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">How to get onto I2P, the anonymous P2P Darknet "
+"(Windows Install)</a>\n"
+"(Youtube Video)\n"
+"This tutorial shows how to install and configure software needed to "
+"access I2P."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:149
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">How to connect to I2P</a>\n"
+"(Youtube Video)\n"
+"How to install I2P on Ubuntu."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:155
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">Installing the I2P darknet software in Linux</a>\n"
+"(Video)\n"
+"Adrian Crenshaw.\n"
+"January 2011"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:162
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">Short garlic routing animation</a>\n"
+"(Youtube Video)\n"
+"Adrian Crenshaw.\n"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:170
+msgid "Articles and Interviews"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:173
+#, python-format
+msgid ""
+"Lance James (0x90) Interviewed by DistributedCity\n"
+"<a href=\"%(link1)s\">Part 1</a>\n"
+"<a href=\"%(link2)s\">Part 2</a>\n"
+"July 26, 2002."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:181
+#, python-format
+msgid ""
+"Lance James (0x90) Interviewed by El País\n"
+"(original in Spanish)\n"
+"<a href=\"%(link)s\">English translation</a>\n"
+"October 31, 2002."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:188
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">2003 Business Week article referencing "
+"invisiblenet</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:192
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">Netzwelt.de article about being anonymous in the "
+"Internet</a>\n"
+"(German)\n"
+"November 2007."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:198
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">zzz interviewed by gulli.com</a>\n"
+"March 2009\n"
+"<a href=\"%(german)s\">German translation</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:205
+#, python-format
+msgid ""
+"<a href=\"%(mp3)s\">zzz interviewed on the InfoSec Daily Podcast Ep. 454 "
+"(mp3)</a>\n"
+"August 18, 2011"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:210
+#, python-format
+msgid ""
+"<a href=\"%(link)s\">I2P - Anonymity for the Masses</a>,\n"
+"Jonathan Cox,\n"
+"November 11, 2011."
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:216
+#, python-format
+msgid ""
+"<a href=\"%(mp3)s\">zzz and Lance James interviewed on the InfoSec Daily "
+"Podcast Ep. 596 (mp3)</a>\n"
+"February 16, 2012"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:223
+msgid "Other"
+msgstr ""
+
+#: i2p2www/pages/site/about/media.html:226
+msgid ""
+"I2P mentioned in Netflix's \"House of Cards\" Season 2 Episode 2,\n"
+"February 14, 2014"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:2
+msgid "I2P Project Members"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:4
+#, python-format
+msgid ""
+"We are a small group of people spread around several continents, working "
+"to\n"
+"advance different aspects of the project and discussing the design of the"
+"\n"
+"network.\n"
+"<a href=\"%(volunteer)s\">Get involved!</a>"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:13
+msgid "Admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:14
+msgid "Project Manager"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:16
+msgid "point of contact of last resort"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:19
+msgid "Treasurer"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:21
+msgid "manage donations / accounts / bounties"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:24
+msgid "PR manager"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:26
+msgid "press contact, manages public relations and affairs"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:29
+msgid "Assistant PR manager"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:31
+msgid "Public speaking, public relations assistance"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:34
+#, python-format
+msgid "<a href=\"http://%(forum)s/\">Forum</a> admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:36
+msgid "manage the public user forum"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:39
+msgid "Download mirrors admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:41
+msgid "manage the mirrors for the download files"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:44
+msgid "Website mirrors admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:45 i2p2www/pages/site/about/team.html:80
+#: i2p2www/pages/site/about/team.html:95 i2p2www/pages/site/about/team.html:100
+#: i2p2www/pages/site/about/team.html:125
+#: i2p2www/pages/site/about/team.html:162
+#: i2p2www/pages/site/about/team.html:172
+#: i2p2www/pages/site/about/team.html:177
+#: i2p2www/pages/site/about/team.html:182
+#: i2p2www/pages/site/about/team.html:187
+#: i2p2www/pages/site/about/team.html:192
+#: i2p2www/pages/site/about/team.html:225
+msgid "vacant"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:46
+msgid "manage the mirrors for the website"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:49
+#, python-format
+msgid "<a href=\"%(monotone)s\">Monotone</a> guru"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:51
+msgid "manage the public monotone repositories"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:54
+msgid "Packager; Linux"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:56
+msgid "Linux (Debian/Ubuntu) distribution packager"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:59
+msgid "Packager; Windows"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:61
+msgid "Windows installer packager"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:64
+msgid "Release Manager"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:66
+msgid "Builds and signs the releases"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:69
+msgid "Update admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:71
+msgid "Monitors and recruits in-network update hosts"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:74
+msgid "Reseed admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:76
+msgid "Monitors, advises and recruits reseed hosts"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:79
+msgid "Security expert"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:81
+msgid "threat model / crypto expert"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:86
+msgid "Manage the project bug tracker"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:89
+msgid "Translation admins"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:94
+msgid "User Advocate"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:96
+msgid "gather, prioritize, advocate for user needs"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:99
+msgid "Web Designer"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:101
+msgid "manage the public project website content design"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:104
+#, python-format
+msgid "<a href=\"%(website)s\">Webserver</a> admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:106
+msgid "manage the public project webservers"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:109
+#, python-format
+msgid "<a href=\"%(website)s\">Website</a> admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:111
+msgid "manage the public project website content"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:114
+msgid "News Admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:116
+msgid "manage router console news feed"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:119
+msgid "Backup News Admin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:121
+msgid "manage the backup news feed"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:124
+msgid "Director of passion"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:126
+msgid "community motivator"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:130
+msgid "Dev"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:131
+msgid "Core Lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:133
+msgid "lead dev for the SDK and router"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:136
+#, python-format
+msgid "<a href=\"http://%(postman)s/\">I2P mail</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:138
+msgid "organize and develop the i2p mail system"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:141
+#, python-format
+msgid "<a href=\"http://%(i2host)s/\">I2Host</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:143
+msgid "I2Host addressbook application"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:146
+#, python-format
+msgid "<a href=\"http://%(bob)s/\">BOB</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:148
+msgid "Basic Open Bridge"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:151
+#, python-format
+msgid "<a href=\"http://%(bote)s/\">I2P-Bote</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:153
+msgid "I2PBote plugin"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:156
+#, python-format
+msgid "<a href=\"http://%(bob)s/\">Robert</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:158
+msgid "Robert BitTorrent client"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:161
+#, python-format
+msgid "<a href=\"http://%(forum)s/viewforum?f=25\">I2Phex</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:163
+msgid "I2Phex Gnutella client"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:166
+#, python-format
+msgid "<a href=\"http://%(forum)s/viewforum?f=21\">I2PSnark</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:168
+msgid "Maintains the integrated Bittorrent client"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:171
+#, python-format
+msgid "<a href=\"http://%(forum)s/viewforum?f=30\">iMule</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:173
+msgid "eMule client over I2P"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:176
+#, python-format
+msgid "<a href=\"http://%(forum)s/viewforum?f=29\">Syndie</a> lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:178
+msgid "Syndie development"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:181
+msgid "Susimail lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:183
+msgid "Susimail development"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:186
+msgid "Console"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:188
+msgid "Router console HTML/CSS design"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:191
+msgid "SAM"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:193
+msgid "SAM maintainer"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:196
+msgid "I2PCPP lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:198
+msgid "C++ Router"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:201
+msgid "Translators"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:202
+msgid "many many people!"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:207
+msgid "Contributors"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:209
+msgid "fire2pe dev, console enhancements"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:213
+msgid "desktopgui, dijjer port"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:217
+msgid "Debian/Ubuntu Packager and PPA maintainer"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:221
+msgid "Routerconsole backend and UI work, website revamp, unit tests work"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:226
+msgid "Help needed on many fronts!"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:230
+msgid "Past contributors"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:232
+msgid "I2PTunnel development, ministreaming library"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:236
+msgid "Project lead, Syndie lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:240
+msgid "Project lead, Syndie lead, I2Phex, support guru"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:244
+msgid "iMule lead"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:248
+#: i2p2www/pages/site/about/team.html:252
+#: i2p2www/pages/site/about/team.html:256
+msgid "I2Phex work"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:260
+msgid "Python SAM library, attack simulations"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:264
+msgid "i2pmail development"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:268
+msgid "Syndie help"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:272
+msgid "i2p mail,susimail and susidns apps"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:276
+msgid "I2Phex (port of Phex to I2P)"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:280
+msgid "addressbook,i2p-bt,syndie client"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:284
+msgid "organize and develop the i2p-bt BitTorrent port"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:288
+msgid "addressbook, i2p-bt, syndie client development"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:292
+msgid "encryption and signature routines, I2PIM"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:296
+msgid "SAM jython code, work on stasher (DHT) and v2v (VoI2P)"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:300
+msgid "installer, systray, bogobot"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:304
+msgid "jbigi development, wiki migration, doc cleanup"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:308
+msgid "java debugging and client development on I2PTunnel and the router console"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:312
+msgid "SAM perl module"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:316
+msgid "i2psnark work"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:320
+msgid "java cleanup"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:324
+msgid "docs. wiki migration"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:328
+msgid "translations into French"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:332
+msgid "C port of jcpuid"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:336
+msgid "C# SAM library, pants, fortuna integration"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:340
+msgid "libSAM"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:344
+#: i2p2www/pages/site/about/team.html:348
+msgid "i2p-bt tracker development"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:352
+msgid "Console and website themes"
+msgstr ""
+
+#: i2p2www/pages/site/about/team.html:382
+msgid "&hellip; and many others"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:2
+msgid "Future Performance Improvements"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:3
+msgid "August 2010"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:7
+msgid ""
+"There are a few major techniques that can be done to improve the "
+"perceived\n"
+"performance of I2P - some of the following are CPU related, others "
+"bandwidth\n"
+"related, and others still are protocol related.  However, all of those\n"
+"dimensions affect the latency, throughput, and perceived performance of "
+"the\n"
+"network, as they reduce contention for scarce resources.  This list is of"
+" course\n"
+"not comprehensive, but it does cover the major ones that are seen."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:15
+#: i2p2www/pages/site/about/performance/index.html:106
+#, python-format
+msgid ""
+"For past performance improvements see the <a href=\"%(history)s\">\n"
+"Performance History</a>."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:20
+msgid "Better peer profiling and selection"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:21
+#, python-format
+msgid ""
+"Probably one of the most important parts of getting faster performance "
+"will\n"
+"be improving how routers choose the peers that they build their tunnels "
+"through\n"
+"- making sure they don't use peers with slow links or ones with fast "
+"links that\n"
+"are overloaded, etc.  In addition, we've got to make sure we don't expose"
+"\n"
+"ourselves to a <a href=\"%(sybilpdf)s\">Sybil</a> attack\n"
+"from a powerful adversary with lots of fast machines."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:30
+msgid "Network database tuning"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:31
+msgid ""
+"We're going to want to be more efficient with the network database's "
+"healing\n"
+"and maintenance algorithms - rather than constantly explore the keyspace "
+"for new\n"
+"peers - causing a significant number of network messages and router load "
+"- we\n"
+"can slow down or even stop exploring until we detect that there's "
+"something new\n"
+"worth finding (e.g. decay the exploration rate based upon the last time "
+"someone\n"
+"gave us a reference to someone we had never heard of).  We can also do "
+"some\n"
+"tuning on what we actually send - how many peers we bounce back (or even "
+"if we\n"
+"bounce back a reply), as well as how many concurrent searches we perform."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:42
+msgid "Session Tag Tuning and Improvements"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:43
+#, python-format
+msgid ""
+"The way the <a href=\"%(elgamalaes)s\">ElGamal/AES+SessionTag</a> "
+"algorithm\n"
+"works is by managing a set of random one-time-use 32 byte arrays, and "
+"expiring\n"
+"them if they aren't used quickly enough.  If we expire them too soon, "
+"we're\n"
+"forced to fall back on a full (expensive) ElGamal encryption, but if we "
+"don't\n"
+"expire them quickly enough, we've got to reduce their quantity so that we"
+" don't\n"
+"run out of memory (and if the recipient somehow gets corrupted and loses "
+"some\n"
+"tags, even more encryption failures may occur prior to detection).  With "
+"some\n"
+"more active detection and feedback driven algorithms, we can safely and "
+"more\n"
+"efficiently tune the lifetime of the tags, replacing the ElGamal "
+"encryption with\n"
+"a trivial AES operation."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:55
+#, python-format
+msgid ""
+"Additional ideas for improving Session Tag delivery are described on the\n"
+"<a href=\"%(elgamalaes)s#future\">ElGamal/AES+SessionTag page</a>."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:61
+msgid "Migrate sessionTag to synchronized PRNG"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:62
+#, python-format
+msgid ""
+"Right now, our <a href=\"%(elgamalaes)s\">ElGamal/AES+SessionTag</a> \n"
+"algorithm works by tagging each encrypted message with a unique random \n"
+"32 byte nonce (a \"session tag\"), identifying that message as being "
+"encrypted \n"
+"with the associated AES session's key. This prevents peers from "
+"distinguishing \n"
+"messages that are part of the same session, since each message has a "
+"completely \n"
+"new random tag. To accomplish this, every few messages bundle a whole \n"
+"new set of session tags within the encrypted message itself, "
+"transparently \n"
+"delivering a way to identify future messages. We then have to keep track"
+" \n"
+"of what messages are successfully delivered so that we know what tags \n"
+"we may use."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:74
+msgid ""
+"This works fine and is fairly robust, however it is inefficient in terms"
+" \n"
+"of bandwidth usage, as it requires the delivery of these tags ahead of \n"
+"time (and not all tags may be necessary, or some may be wasted, due to \n"
+"their expiration). On average though, predelivering the session tag costs"
+" \n"
+"32 bytes per message (the size of a tag). As Taral suggested though, that"
+" \n"
+"size can be avoided by replacing the delivery of the tags with a "
+"synchronized \n"
+"PRNG - when a new session is established (through an ElGamal encrypted \n"
+"block), both sides seed a PRNG for use and generate the session tags on \n"
+"demand (with the recipient precalculating the next few possible values \n"
+"to handle out of order delivery)."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:87
+msgid "Longer lasting tunnels"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:88
+msgid ""
+"The current default tunnel duration of 10 minutes is fairly arbitrary, "
+"though\n"
+"it \"feels okay\".  Once we've got tunnel healing code and more effective"
+" failure\n"
+"detection, we'll be able to more safely vary those durations, reducing "
+"the\n"
+"network and CPU load (due to expensive tunnel creation messages)."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:95
+msgid ""
+"This appears to be an easy fix for high load on the big-bandwidth "
+"routers, but\n"
+"we should not resort to it until we've tuned the tunnel building "
+"algorithms further.\n"
+"However, the 10 minute tunnel lifetime is hardcoded in quite a few "
+"places,\n"
+"so substantial effort would be required to change the duration.\n"
+"Also, it would be difficult to maintain backward compatibility with such "
+"a change."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:102
+msgid ""
+"Currently, since the network average tunnel build success rate is fairly "
+"high,\n"
+"there are no current plans to extend tunnel lifetime."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:108
+msgid "Adjust the timeouts"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:109
+msgid ""
+"Yet another of the fairly arbitrary but \"okay feeling\" things we've got"
+" are the\n"
+"current timeouts for various activities.  Why do we have a 60 second "
+"\"peer\n"
+"unreachable\" timeout?  Why do we try sending through a different tunnel "
+"that a\n"
+"LeaseSet advertises after 10 seconds?  Why are the network database "
+"queries\n"
+"bounded by 60 or 20 second limits?  Why are destinations configured to "
+"ask for a\n"
+"new set of tunnels every 10 minutes?  Why do we allow 60 seconds for a "
+"peer to\n"
+"reply to our request that they join a tunnel?  Why do we consider a "
+"tunnel that\n"
+"doesn't pass our test within 60 seconds \"dead\"?"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:119
+msgid ""
+"Each of those imponderables can be addressed with more adaptive code, as "
+"well\n"
+"as tunable parameters to allow for more appropriate tradeoffs between\n"
+"bandwidth, latency, and CPU usage."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:125
+msgid "Full streaming protocol improvements"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:128
+msgid ""
+"Perhaps re-enable the interactive stream profile (the \n"
+"current implementation only uses the bulk stream profile)."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:134
+msgid ""
+"Client level bandwidth limiting (in either or both directions on a "
+"stream, \n"
+"or possibly shared across multiple streams). This would be in addition to"
+" \n"
+"the router's overall bandwidth limiting, of course."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:141
+msgid ""
+"Access control lists (only allowing streams to or from certain other "
+"known \n"
+"destinations)."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:147
+msgid ""
+"Web controls and monitoring the health of the various streams, as well \n"
+"as the ability to explicitly close or throttle them."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/future.html:153
+#, python-format
+msgid ""
+"Additional ideas for improving the streaming library are described on the"
+"\n"
+"<a href=\"%(streaming)s#future\">streaming library page</a>."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:2
+msgid "Performance History"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:4
+#, python-format
+msgid ""
+"Notable performance improvements have been made using the techniques "
+"below.\n"
+"There is more to do, see the <a href=\"%(performance)s\">Performance</a> "
+"page\n"
+"for current issues and thoughts."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:10
+msgid "Native math"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:11
+#: i2p2www/pages/site/about/performance/history.html:67
+#: i2p2www/pages/site/about/performance/history.html:82
+#: i2p2www/pages/site/about/performance/history.html:105
+#: i2p2www/pages/site/about/performance/history.html:133
+msgid "implemented"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:12
+#, python-format
+msgid ""
+"When I last profiled the I2P code, the vast majority of time was spent "
+"within\n"
+"one function: java.math.BigInteger's\n"
+"<a href=\"%(modpow)s\">modPow</a>.\n"
+"Rather than try to tune this method, we'll call out to\n"
+"<a href=\"%(gmp)s\">GNU MP</a> - an insanely fast math library\n"
+"(with tuned assembler for many architectures). (<i>Editor: see\n"
+"<a href=\"%(jbigi)s\">NativeBigInteger for faster public key "
+"cryptography</a></i>)"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:23
+msgid ""
+"\n"
+"ugha and duck are working on the C/JNI glue code, and the existing java "
+"code\n"
+"is already deployed with hooks for that whenever its ready.  Preliminary "
+"results\n"
+"look fantastic - running the router with the native GMP modPow is "
+"providing over\n"
+"a 800&#37; speedup in encryption performance, and the load was cut in "
+"half.  This\n"
+"was just on one user's machine, and things are nowhere near ready for "
+"packaging\n"
+"and deployment, yet."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:32
+msgid "Garlic wrapping a \"reply\" LeaseSet"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:33
+msgid "implemented but needs tuning"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:34
+msgid ""
+"This algorithm tweak will only be relevant for applications that want "
+"their\n"
+"peers to reply to them (though that includes everything that uses "
+"I2PTunnel or\n"
+"mihi's ministreaming lib):"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:39
+msgid ""
+"Previously, when Alice sent Bob a message, when Bob replied he had to do "
+"a\n"
+"lookup in the network database - sending out a few requests to get "
+"Alice's\n"
+"current LeaseSet.  If he already has Alice's current LeaseSet, he can "
+"instead\n"
+"just send his reply immediately - this is (part of) why it typically "
+"takes a\n"
+"little longer talking to someone the first time you connect, but "
+"subsequent\n"
+"communication is faster.  Currently - for all clients - we wrap\n"
+"the sender's current LeaseSet in the garlic that is delivered to the "
+"recipient,\n"
+"so that when they go to reply, they'll <i>always</i> have the LeaseSet "
+"locally\n"
+"stored - completely removing any need for a network database lookup on "
+"replies.\n"
+"This trades off a large portion of the sender's bandwidth for that faster"
+" reply.\n"
+"If we didn't do this very often,\n"
+"overall network bandwidth usage would decrease, since the recipient "
+"doesn't\n"
+"have to do the network database lookup."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:54
+msgid ""
+"For unpublished LeaseSets such as \"shared clients\", this is the only "
+"way to\n"
+"get the LeaseSet to Bob. Unfortunately this bundling every time adds\n"
+"almost 100&#37; overhead to a high-bandwidth connection, and much more to"
+"\n"
+"a connection with smaller messages."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:60
+msgid ""
+"Changes scheduled for release 0.6.2 will bundle the LeaseSet only when\n"
+"necessary, at the beginning of a connection or when the LeaseSet changes."
+"\n"
+"This will substantially reduce the total overhead of I2P messaging."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:66
+msgid "More efficient TCP rejection"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:68
+msgid ""
+"At the moment, all TCP connections do all of their peer validation after\n"
+"going through the full (expensive) Diffie-Hellman handshaking to "
+"negotiate a\n"
+"private session key.  This means that if someone's clock is really wrong,"
+" or\n"
+"their NAT/firewall/etc is improperly configured (or they're just running "
+"an\n"
+"incompatible version of the router), they're going to consistently "
+"(though not\n"
+"constantly, thanks to the banlist) cause a futile expensive cryptographic"
+"\n"
+"operation on all the peers they know about.  While we will want to keep "
+"some\n"
+"verification/validation within the encryption boundary, we'll want to "
+"update the\n"
+"protocol to do some of it first, so that we can reject them cleanly\n"
+"without wasting much CPU or other resources."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:81
+msgid "Adjust the tunnel testing"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:83
+msgid ""
+"Rather than going with the fairly random scheme we have now, we should "
+"use a\n"
+"more context aware algorithm for testing tunnels.  e.g. if we already "
+"know its\n"
+"passing valid data correctly, there's no need to test it, while if we "
+"haven't\n"
+"seen any data through it recently, perhaps its worthwhile to throw some "
+"data its\n"
+"way.  This will reduce the tunnel contention due to excess messages, as "
+"well as\n"
+"improve the speed at which we detect - and address - failing tunnels."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:92
+msgid "Persistent Tunnel / Lease Selection"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:93
+msgid ""
+"Outbound tunnel selection implemented in 0.6.1.30, inbound lease "
+"selection \n"
+"implemented in release 0.6.2."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:97
+msgid ""
+"Selecting tunnels and leases at random for every message creates a large"
+" \n"
+"incidence of out-of-order delivery, which prevents the streaming lib from"
+" \n"
+"increasing its window size as much as it could. By persisting with the \n"
+"same selections for a given connection, the transfer rate is much faster."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:104
+msgid "Compress some data structures"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:106
+msgid ""
+"The I2NP messages and the data they contain is already defined in a "
+"fairly\n"
+"compact structure, though one attribute of the RouterInfo structure is "
+"not -\n"
+"\"options\" is a plain ASCII name = value mapping.  Right now, we're "
+"filling it\n"
+"with those published statistics - around 3300 bytes per peer.  Trivial to"
+"\n"
+"implement GZip compression would nearly cut that to 1/3 its size, and "
+"when you\n"
+"consider how often RouterInfo structures are passed across the network, "
+"that's\n"
+"significant savings - every time a router asks another router for a "
+"networkDb\n"
+"entry that the peer doesn't have, it sends back 3-10 RouterInfo of them."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:117
+msgid "Update the ministreaming protocol"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:118
+msgid "replaced by full streaming protocol"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:119
+msgid ""
+"Currently mihi's ministreaming library has a fairly simple stream "
+"negotiation\n"
+"protocol - Alice sends Bob a SYN message, Bob replies with an ACK "
+"message, then\n"
+"Alice and Bob send each other some data, until one of them sends the "
+"other a\n"
+"CLOSE message.  For long lasting connections (to an IRC server, for "
+"instance),\n"
+"that overhead is negligible, but for simple one-off request/response "
+"situations\n"
+"(an HTTP request/reply, for instance), that's more than twice as many "
+"messages as\n"
+"necessary.  If, however, Alice piggybacked her first payload in with the "
+"SYN\n"
+"message, and Bob piggybacked his first reply with the ACK - and perhaps "
+"also\n"
+"included the CLOSE flag - transient streams such as HTTP requests could "
+"be\n"
+"reduced to a pair of messages, instead of the "
+"SYN+ACK+request+response+CLOSE."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:132
+msgid "Implement full streaming protocol"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:134
+msgid ""
+"The ministreaming protocol takes advantage of a poor design decision in "
+"the\n"
+"I2P client protocol (I2CP) - the exposure of \"mode=GUARANTEED\", "
+"allowing what\n"
+"would otherwise be an unreliable, best-effort, message based protocol to "
+"be used\n"
+"for reliable, blocking operation (under the covers, its still all "
+"unreliable and\n"
+"message based, with the router providing delivery guarantees by garlic "
+"wrapping\n"
+"an \"ACK\" message in with the payload, so once the data gets to the "
+"target, the\n"
+"ACK message is forwarded back to us [through tunnels, of course])."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/history.html:143
+#, python-format
+msgid ""
+"As I've <a href=\"%(link)s\">said</a>, having\n"
+"I2PTunnel (and the ministreaming lib) go this route was the best thing "
+"that\n"
+"could be done, but more efficient mechanisms are available.  When we rip "
+"out the\n"
+"\"mode=GUARANTEED\" functionality, we're essentially leaving ourselves "
+"with an\n"
+"I2CP that looks like an anonymous IP layer, and as such, we'll be able to"
+"\n"
+"implement the streaming library to take advantage of the design "
+"experiences of\n"
+"the TCP layer - selective ACKs, congestion detection, nagle, etc."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:2
+msgid "Performance"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:5
+msgid ""
+"How does I2P work, why is it slow, and why does it not use my full "
+"bandwidth?"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:7
+msgid ""
+"Probably one of the most frequent things people ask is \"how fast is "
+"I2P?\",\n"
+"and no one seems to like the answer - \"it depends\".  After trying out "
+"I2P, the\n"
+"next thing they ask is \"will it get faster?\", and the answer to that is"
+" a most\n"
+"emphatic <b>yes</b>."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:14
+msgid ""
+"I2P is a full dynamic network. Each client is known to other nodes and "
+"tests local known nodes for reachability and capacity.\n"
+"Only reachable and capable nodes are saved to a local NetDB (This is "
+"generally only a portion of the network, around 500-1000).\n"
+"When I2P builds tunnels, it selects the best resource from this pool. For"
+" example, a small subset of 20-50 nodes are only available to build "
+"tunnels with.\n"
+"Because testing happens every minute, the pool of used nodes changes "
+"every minute.\n"
+"Each I2P node knows a different part of the net, meaning that each router"
+" has a different set of I2P nodes to be used for tunnels.\n"
+"Even if two routers have the same subset of known nodes, the tests for "
+"reachability and capacity will likely show different results, as the "
+"other routers could be under load just as one router tests, but be free "
+"if the second router tests."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:23
+msgid ""
+"The above describes why each I2P node has different nodes to build "
+"tunnels.\n"
+"Because every I2P node has a different latency and bandwith, tunnels "
+"(which are built via those nodes) have different latency and bandwidth "
+"values.\n"
+"And because every I2P node has different tunnels built, no two I2P nodes "
+"have the same tunnel sets."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:29
+msgid ""
+"A server/client is known as a \"destination\" and each destination has at"
+" least one inbound and one outbound tunnel. The default is 3 hops per "
+"tunnel.\n"
+"This adds up to 12 hops (aka 12 different I2P nodes) for a full roundtrip"
+" client-server-client."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:34
+msgid ""
+"Each data package is sent through 6 other I2P nodes until it reaches the "
+"server:"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:40
+msgid "and on way back 6 different I2P nodes:"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:47
+msgid ""
+"As most traffic on I2P (www, torrent,...) needs ack packages until new "
+"data is sent, it needs to wait until a ack package returns from the "
+"server.\n"
+"In the end: send data, wait for ack, send more data, wait for ack,..\n"
+"As the RTT (RoundTripTime) adds up from the latency of each individual "
+"I2P node and each connection on this roundtrip, it takes usually 1-3 "
+"seconds until a ack package comes back to the client.\n"
+"With some internals of TCP and I2P transport, a data package has a "
+"limited size and cannot be as large as we want it to be.\n"
+"Together these conditions set a limit of max bandwidth per tunnel of "
+"20-50 kbyte/sec.\n"
+"But if ONLY ONE hop in the tunnel has only 5 kb/sec bandwidth to spend, "
+"the whole tunnel is limited to 5 kb/sec, independent of the \n"
+"latency and other limitations."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:57
+msgid ""
+"Due to encryption used and other setups in I2P (howto built up tunnels, "
+"latency, ...) it is quite expensive in CPU time to build a tunnel. This "
+"is \n"
+"why a destination is only allowed to have a max of 6 IN and 6 OUT tunnels"
+" to transport data. With a max of 50 kb/sec per tunnel, a destination "
+"could \n"
+"use roughly 300 kb/sec traffic combined ( in reality it could be more if "
+"shorter tunnels are used with low or no anonymity available).\n"
+"Used tunnels are discarded every 10 minutes and new ones are built up.\n"
+"This change of tunnels (and sometimes clients that shutdown hard due to "
+"usage of \"shut down at once\" or situations where there is power loss) "
+"does \n"
+"sometimes break tunnels and connections, as seen on the IRC2P Network in "
+"loss of connection (ping timeout) or on when using eepget."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:66
+msgid ""
+"With a limited set of destinations and a limited set of tunnels per "
+"destination, one I2P node only uses a limited set of tunnels across other"
+" I2P nodes.\n"
+"For example, if an I2P node is \"hop1\" in the small example above, we "
+"only see 1 participating tunnel originating from the client.\n"
+"If we sum up the whole I2P network, only a rather limited number of "
+"participating tunnels could be built with a limited amount of bandwidth "
+"all together.\n"
+"If one distributes these limited numbers across the number of I2P nodes, "
+"there is only a fraction of available bandwidth/capacity available for "
+"use."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:73
+msgid ""
+"To remain anonymous one router should not be used by the whole network "
+"for building tunnels.\n"
+"If one router does act as a tunnel router for ALL I2P nodes, it becomes a"
+" very real central point of failure as well as a central point to grab "
+"IPs and data from the clients. This is not good.\n"
+"I2P attempts to spread the load across a lot of I2P nodes because of this"
+" reason."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:79
+msgid ""
+"Another point is the full mesh network. Each connection hop-hop utilizes "
+"one TCP or UDP connection on the I2P nodes. With 1000 connections, one "
+"sees \n"
+"1000 TCP connections. That is quite a lot and some home and small office "
+"routers (DSL, cable,..) only allow a small number of connections (or just"
+" go mad if you use more than X connections).\n"
+"I2P tries to limit these connections to be under 1500 per UDP and per TCP"
+" type.\n"
+"This limits the amount of traffic routed across your I2P node as well."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:86
+msgid ""
+"In summary, I2P is very complex and there is no easy way to pinpoint why "
+"your node is not used.\n"
+"If your node is reachable and has a bandwidth setting of >128 kbyte/sec "
+"shared and is reachable 24/7, it should be used after some time for "
+"participating traffic.\n"
+"If it is down in between, the testing of your I2P node done by other "
+"nodes will tell them: you are not reachable. This blocks your node for at"
+" least \n"
+"24h on other nodes. So, the other nodes which tested you as down will not"
+" use your node for 24h for building tunnels. This is why your traffic "
+"will \n"
+"be lower after a restart/shutdown for a minimum of 24h."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:94
+msgid ""
+"Also: other I2P nodes needs to know your I2P router to test it for "
+"reachability and capacity. It takes time for other nodes to get known to "
+"your node. \n"
+"It will be faster if you use I2P and build more tunnels, e.g. use a "
+"torrent or www for some time."
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:99
+msgid "Performance Improvements"
+msgstr ""
+
+#: i2p2www/pages/site/about/performance/index.html:101
+#, python-format
+msgid ""
+"For possible future performance improvements see\n"
+"<a href=\"%(future)s\">Future Performance Improvements</a>."
+msgstr ""
+
diff --git a/i2p2www/translations/id/LC_MESSAGES/get-involved.po b/i2p2www/translations/id/LC_MESSAGES/get-involved.po
new file mode 100644
index 0000000000000000000000000000000000000000..8a4f2766557d31233074a98e0d95077e58a4eb7e
--- /dev/null
+++ b/i2p2www/translations/id/LC_MESSAGES/get-involved.po
@@ -0,0 +1,4235 @@
+# Indonesian translations for I2P.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the I2P project.
+#
+# Translators:
+# Khairul Agasta <khairuldroids@gmail.com>, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version:  I2P\n"
+"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
+"POT-Creation-Date: 2014-07-26 02:42+0000\n"
+"PO-Revision-Date: 2014-08-13 05:51+0000\n"
+"Last-Translator: Khairul Agasta <khairuldroids@gmail.com>\n"
+"Language-Team: Indonesian "
+"(http://www.transifex.com/projects/p/I2P/language/id/)\n"
+"Plural-Forms: nplurals=1; plural=0\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 1.3\n"
+
+#: i2p2www/pages/site/get-involved/donate.html:2
+#: i2p2www/pages/site/get-involved/index.html:77
+msgid "Donate"
+msgstr "Donasi"
+
+#: i2p2www/pages/site/get-involved/donate.html:4
+msgid ""
+"Thank you for your interest in contributing to I2P!\n"
+"The details of how you\n"
+"can make your contribution are provided below."
+msgstr ""
+"Terima kasih atas ketertarikan Anda dalam memberikan kontrubsi untuk I2P!"
+"\n"
+"Detail bagaimana Anda\n"
+"dapat memberikan kontribusi disertakan dibawah."
+
+#: i2p2www/pages/site/get-involved/donate.html:10
+msgid "Tax Status"
+msgstr "Status Pajak"
+
+#: i2p2www/pages/site/get-involved/donate.html:11
+msgid ""
+"I2P is not incorporated.\n"
+"Your contributions are probably not tax-deductible.\n"
+"If you would like to discuss a large contribution, please contact eche|on."
+msgstr ""
+"I2P tidak berbentuk badan hukum.\n"
+"Kontribusi Anda mungkin tidak mengurangi pajak.\n"
+"Jika Anda ingin mendiskusikan mengenai kontribusi besar, silahkan hubungi"
+" echelon."
+
+#: i2p2www/pages/site/get-involved/donate.html:17
+msgid "Stickers"
+msgstr "Stricker"
+
+#: i2p2www/pages/site/get-involved/donate.html:18
+msgid ""
+"While supplies last, we offer I2P stickers to those who donate enough\n"
+"to cover PayPal fees and postage from the U.S.\n"
+"You must include \"stickers please\" and your address in the Paypal "
+"comments.\n"
+"For other payment methods, follow up with an email to eche|on\n"
+"with the subject \"stickers please\", your payment information, and your "
+"address."
+msgstr ""
+"Sementara persediaan terakhir, kami menawarkan sticker I2P untuk mereka\n"
+"yang memberikan donasi cukup untuk menutupi biaya PayPal dan ongkos kirim"
+"\n"
+"dari U.S.\n"
+"Anda harus menyertakan kata \"stickers please\" beserta alamat Anda pada "
+"komentar Paypal.\n"
+"Untuk jenis pembayaran lain, follow up dengan email ke echelon\n"
+"dengan subyek \"stickers please\", informasi pembayaran, dan alamat Anda."
+
+#: i2p2www/pages/site/get-involved/donate.html:27
+#, python-format
+msgid ""
+"As of %(date)s, eche|on has been running a\n"
+"<a href=\"%(coinurl)s\">%(cointype)s</a> account for the I2P project.\n"
+"ATTENTION! The address changed on 02-20-2014. ATTENTION!\n"
+"If you'd like to donate using %(cointype)s, just transfer your\n"
+"desired amount of coins to the account <b>%(account)s</b>\n"
+"and leave eche|on a note if you'd like your donation to be\n"
+"mentioned on the I2P webpage."
+msgstr ""
+"Pada %(date)s, echelon telah membuat sebuah\n"
+"<a href=\"%(coinurl)s\">%(cointype)s</a> akun untuk proyek I2P.\n"
+"PERHATIAN! Alamat diubah pada 02-20-2014. PERHATIAN!\n"
+"Jika Anda ingin memberikan donasi dengan menggunakan\n"
+"%(cointype)s, transfer jumlah koin yang Anda ingin donasikan\n"
+"ke akun <b>%(account)s</b> dan tinggalkan catatan untuk echelon\n"
+"jika Anda ingin agar donasi Anda disebutkan pada laman web I2P."
+
+#: i2p2www/pages/site/get-involved/donate.html:39
+#: i2p2www/pages/site/get-involved/donate.html:56
+#: i2p2www/pages/site/get-involved/donate.html:72
+msgid "For easy usage, use the QR code below!"
+msgstr "Untuk penggunaan mudah, gunakan kode QR dibawah!"
+
+#: i2p2www/pages/site/get-involved/donate.html:44
+#, python-format
+msgid ""
+"As of %(date)s, eche|on has been running a\n"
+"<a href=\"%(coinurl)s\">%(cointype)s</a> account for the I2P project.\n"
+"ATTENTION! The address changed 02-20-2014. ATTENTION!\n"
+"If you'd like to donate using %(cointype)s, just transfer your\n"
+"desired amount of coins to the account <b>%(account)s</b>\n"
+"and leave eche|on a note if you'd like your donation to be\n"
+"mentioned on the I2P webpage."
+msgstr ""
+"Pada %(date)s, echelon telah membuat sebuah\n"
+"<a href=\"%(coinurl)s\">%(cointype)s</a> akun untuk proyek I2P.\n"
+"PERHATIAN! Alamat diubah pada 02-20-2014. PERHATIAN!\n"
+"Jika Anda ingin memberikan donasi dengan menggunakan\n"
+"%(cointype)s, transfer jumlah koin yang Anda ingin donasikan\n"
+"ke akun <b>%(account)s</b> dan tinggal catatan untuk echelon\n"
+"jika Anda ingin agar donasi Anda disebutkan pada laman web I2P."
+
+#: i2p2www/pages/site/get-involved/donate.html:61
+#, python-format
+msgid ""
+"As of %(date)s, Meeh has been running a\n"
+"<a href=\"%(coinurl)s\">%(cointype)s</a> account for the I2P project.\n"
+"If you'd like to donate using %(cointype)s, just transfer your\n"
+"desired amount of coins to the account <b>%(account)s</b>\n"
+"and leave Meeh a note if you'd like your donation to be\n"
+"mentioned on the I2P webpage."
+msgstr ""
+"Pada %(date)s, Meeh telah membuat sebuah\n"
+"<a href=\"%(coinurl)s\">%(cointype)s</a> akun untuk proyek I2P.\n"
+"PERHATIAN! Alamat diubah pada 02-20-2014. PERHATIAN!\n"
+"Jika Anda ingin memberikan donasi dengan menggunakan\n"
+"%(cointype)s, transfer jumlah koin yang Anda ingin donasikan\n"
+"ke akun <b>%(account)s</b> dan tinggal catatan untuk echelon\n"
+"jika Anda ingin agar donasi Anda disebutkan pada laman web I2P."
+
+#: i2p2www/pages/site/get-involved/donate.html:77
+#, python-format
+msgid ""
+"We accept most altcoins, just ask Meeh. Other altcoins can be converted "
+"and exchanged for a crypto currency we currently support. Please send a "
+"mail to \"%(account)s\" for a such donation."
+msgstr ""
+"Kami menerima sebagian besar altcoins, silahkan bertanya ke Meeh. "
+"Altcoins lain dapat dikonversik dan ditukarkan untuk mata uang kripto "
+"yang kami dukung. Silahkan kirimkan email ke \"%(account)s\" untuk donasi"
+" seperti itu."
+
+#: i2p2www/pages/site/get-involved/donate.html:84
+#, python-format
+msgid "You can donate direct via PayPal to the account \"%(account)s\"."
+msgstr "Anda dapat mendonasikan langsung melalui PayPal ke akun \"%(account)s\"."
+
+#: i2p2www/pages/site/get-involved/donate.html:90
+msgid "One time donation:"
+msgstr "Donasi satu kali:"
+
+#: i2p2www/pages/site/get-involved/donate.html:104
+msgid "Donate 10 &euro;/month for 12 months:"
+msgstr "Donasi 10 &euro;/bulan selama 12 bulan:"
+
+#: i2p2www/pages/site/get-involved/donate.html:112
+#: i2p2www/pages/site/get-involved/donate.html:124
+#: i2p2www/pages/site/get-involved/donate.html:136
+#: i2p2www/pages/site/get-involved/donate.html:148
+msgid "I2P donation "
+msgstr "I2P donasi"
+
+#: i2p2www/pages/site/get-involved/donate.html:118
+msgid "Donate 20 &euro;/month for 12 months:"
+msgstr "Donasi 20 &euro;/bulan selama 12 bulan:"
+
+#: i2p2www/pages/site/get-involved/donate.html:130
+msgid "Donate 30 &euro;/month for 12 months:"
+msgstr "Donasi 30 &euro;/bulan selama 12 bulan:"
+
+#: i2p2www/pages/site/get-involved/donate.html:142
+msgid "Donate 50 &euro;/month for 12 months:"
+msgstr "Donasi 50 &euro;/bulan selama 12 bulan:"
+
+#: i2p2www/pages/site/get-involved/donate.html:157
+msgid "Flattr this"
+msgstr "Flattr ini"
+
+#: i2p2www/pages/site/get-involved/donate.html:162
+msgid ""
+"If you want to keep more or less anonymous, the option to send money via "
+"mail is also available. But it is less secure\n"
+"as the envelope can be lost on the way to us."
+msgstr ""
+"Jika Anda ingin tetap lebih atau sedikit anonim, opsi untuk mengirimkan "
+"uang melalui surat juga tersedia. Tetapi itu sedikit tidak aman\n"
+"karena amplop bisa saja hilang selama perjalanan ke kami."
+
+#: i2p2www/pages/site/get-involved/donate.html:166
+#, python-format
+msgid ""
+"If you'd like to donate via  snail mail, send an email to <a "
+"href=\"mailto:%(email)s?subject=information about snailmail "
+"donation\">%(email)s</a>\n"
+" and you'll receive an email with instructions detailing how to proceed."
+msgstr ""
+"Jika Anda ingin memberikan donasi melalui surat snail, kirimkan email ke "
+"<a href=\"mailto:%(email)s?subject=informasi mengenai donasi "
+"snailmail\">%(email)s</a>\n"
+"dan Anda akan menerima email dengan instruksi mendetail bagaimana "
+"melanjutkannya."
+
+#: i2p2www/pages/site/get-involved/donate.html:171
+#, python-format
+msgid ""
+"In the meantime, feel free to take a look at the generous donations that "
+"have been\n"
+"given in support of the I2P Project at the <a "
+"href=\"%(halloffame)s\">hall of fame</a>."
+msgstr ""
+"Sementara itu, jangan sungkan untuk melihat donasi para dermawan yang "
+"telah diberikan\n"
+"untuk mendukung Proyek I2P pada <a href=\"%(halloffame)s\">hall of "
+"fame</a>."
+
+#: i2p2www/pages/site/get-involved/index.html:2
+msgid "Get Involved!"
+msgstr "Ikut Terlibat!"
+
+#: i2p2www/pages/site/get-involved/index.html:4
+msgid "We need your help!"
+msgstr "Kami membutuhkan bantuan Anda!"
+
+#: i2p2www/pages/site/get-involved/index.html:5
+msgid ""
+"To get involved, please feel free to join us on the #i2p IRC channel (on\n"
+"irc.freenode.net, or within I2P on irc.freshcoffee.i2p or "
+"irc.postman.i2p)."
+msgstr ""
+"Untuk ikut terlibat, jangan sungkan untuk bergabung dengan kami pada\n"
+"channel IRC #i2p (pada irc.freenode.net, atau didalam I2P pada "
+"irc.freshcoffee.i2p\n"
+"atau irc.postman.i2p)."
+
+#: i2p2www/pages/site/get-involved/index.html:9
+#, python-format
+msgid ""
+"If you're interested in joining our <a href=\"%(team)s\">team</a>, please"
+" get in\n"
+"touch as we're always looking for eager contributors!"
+msgstr ""
+"Jika Anda tertarik untuk bergabung dengan <a href=\"%(team)s\">tim</a> "
+"kami,\n"
+"silahkan berhubungan karena kami selalu mencari kontributor yang "
+"bersemangat!"
+
+#: i2p2www/pages/site/get-involved/index.html:13
+msgid ""
+"We need help in many areas, and you don't need to know Java to "
+"contribute!\n"
+"Here's a list to help you get started!"
+msgstr ""
+"Kami membutuhkan bantuan pada banyak area, dan Anda tidak perlu mengerti "
+"Java untuk berkontribusi!\n"
+"Berikut adalah daftar yang akan membantu Anda dalam memulai!"
+
+#: i2p2www/pages/site/get-involved/index.html:18
+msgid "Spread the Word!"
+msgstr "Sebarkan Berita!"
+
+#: i2p2www/pages/site/get-involved/index.html:19
+msgid ""
+"Tell people about I2P on forums, blogs, and comments to articles.\n"
+"Fix up the Wikipedia article about I2P in your language.\n"
+"Tell your friends."
+msgstr ""
+"Katakan kepada orang-orang mengenai I2P di forum, blog, dan komentar "
+"untuk artikel.\n"
+"Perbaiki artikel Wikipedia mengenai I2P dalam bahasa Anda.\n"
+"Katakan kepada teman-teman Anda."
+
+#: i2p2www/pages/site/get-involved/index.html:24
+msgid "Testing"
+msgstr "Menguji"
+
+#: i2p2www/pages/site/get-involved/index.html:25
+#, python-format
+msgid ""
+"Run the latest builds from <a href=\"%(monotone)s\">monotone</a>\n"
+"and report results on #i2p or as bugs on <a href=\"%(trac)s\">Trac</a>."
+msgstr ""
+"Jalankan build terbaru dari <a href=\"%(monotone)s\">monotone</a>\n"
+"dan laporkan hasilnya di #i2p atau sebagai bug di <a "
+"href=\"%(trac)s\">Trac</a>."
+
+#: i2p2www/pages/site/get-involved/index.html:30
+msgid "Documentation"
+msgstr "Dokumentasi"
+
+#: i2p2www/pages/site/get-involved/index.html:31
+msgid ""
+"Help fix the parts of the website that are outdated or incomplete.\n"
+"Translate pages into other languages."
+msgstr ""
+"Bantu perbaiki bagian website kami yang sudah kedaluwarsa atau tidak "
+"lengkap.\n"
+"Terjemahkan halaman kedalam bahasa lain."
+
+#: i2p2www/pages/site/get-involved/index.html:35
+msgid "Pictures"
+msgstr "Gambar"
+
+#: i2p2www/pages/site/get-involved/index.html:36
+msgid "Make some more pictures, fix the old ones on the website"
+msgstr "Membuat lebih banyak gambar, perbaiki yang lama pada website."
+
+#: i2p2www/pages/site/get-involved/index.html:39
+msgid "Content"
+msgstr "Konten"
+
+#: i2p2www/pages/site/get-involved/index.html:40
+msgid "Make an eepsite! Add some content! Contribute to the community!"
+msgstr "Membuat eepsite! Tambahkan beberapa konten! Kontribusi dengan komunitas!"
+
+#: i2p2www/pages/site/get-involved/index.html:43
+msgid "Services"
+msgstr "Layanan"
+
+#: i2p2www/pages/site/get-involved/index.html:44
+msgid ""
+"Run a service on an eepsite. It could be a proxy, a forum, a tracker,\n"
+"a naming service, a search engine, an eepsite monitor... many of these\n"
+"aren't that hard."
+msgstr ""
+"Menjalankan sebuah layanan pada eepsite. Itu bisa berupa proxy, forum\n"
+"tracker, layanan penamaan, mesin pencari, pemantau eepsite... dan "
+"kebanyakan\n"
+"dari mereka tidaklah sulit."
+
+#: i2p2www/pages/site/get-involved/index.html:49
+msgid "Applications"
+msgstr "Aplikasi"
+
+#: i2p2www/pages/site/get-involved/index.html:50
+#, python-format
+msgid ""
+"Write or port applications for I2P! There's some guidelines and\n"
+"a list of ideas on the <a href=\"%(apps)s\">applications page</a>."
+msgstr ""
+"Menulis atau port aplikasi untuk I2P! Ada beberapa pedoman dan\n"
+"daftar ide pada <a href=\"%(apps)s\">laman aplikasi</a>."
+
+#: i2p2www/pages/site/get-involved/index.html:54
+msgid "Coding"
+msgstr "Coding"
+
+#: i2p2www/pages/site/get-involved/index.html:55
+#, python-format
+msgid ""
+"There's plenty to do if you know Java or are ready to learn.\n"
+"Check for open tickets on <a href=\"%(trac)s\">Trac</a>\n"
+"or the TODO list on <a href=\"http://%(zzz)s\">%(zzz)s</a> for\n"
+"some ideas on where to start.\n"
+"See the <a href=\"%(newdevs)s\">new developer's guide</a> for details."
+msgstr ""
+"Ada banyak hal yang harus dilakukan jika Anda mengerti Java atau siap "
+"untuk belajar.\n"
+"Periksa tiker yang terbuka di <a href=\"%(trac)s\">Trac</a>\n"
+"atau daftar HARUS DILAKUKAN di <a href=\"http://%(zzz)s\">%(zzz)s</a> "
+"untuk\n"
+"beberapa ide pada dimana harus memulai.\n"
+"Lihat <a href=\"%(newdevs)s\">panduan pengembang baru</a> untuk detail."
+
+#: i2p2www/pages/site/get-involved/index.html:64
+msgid "Translation"
+msgstr "Penerjemahan"
+
+#: i2p2www/pages/site/get-involved/index.html:65
+#, python-format
+msgid ""
+"Help translate the website and the software into your language.\n"
+"See the <a href=\"%(newtrans)s\">new translator's guide</a> for details."
+msgstr ""
+"Bantu menerjemahkan website dan perangkat lunak kedalam bahasa Anda.\n"
+"Lihat  <a href=\"%(newtrans)s\">panduan penerjemah baru</a> untuk detail."
+
+#: i2p2www/pages/site/get-involved/index.html:69
+msgid "Analysis"
+msgstr "Analisis"
+
+#: i2p2www/pages/site/get-involved/index.html:70
+#, python-format
+msgid ""
+"Study or test the code to look for vulnerabilities.\n"
+"Both anonymity vulnerabilities from the various\n"
+"<a href=\"%(threatmodel)s\">threat models</a>,\n"
+"and DOS and other weaknesses due to securities holes,\n"
+"need researching."
+msgstr ""
+"Pelajari atau uji kode untuk melihat kerentanan.\n"
+"Kedua kerentanan anonimitas dari beragama\n"
+"<a href=\"%(threatmodel)s\">model ancaman</a>,\n"
+"dan DOS dan kelemahan lainnya dikarenakan celah keamanan,\n"
+"butuh penelitian."
+
+#: i2p2www/pages/site/get-involved/roadmap.html:2
+msgid "Roadmap"
+msgstr "Roadmap"
+
+#: i2p2www/pages/site/get-involved/roadmap.html:7
+msgid ""
+"Include some seed data in the distribution so a central reseed location "
+"isn't required?"
+msgstr ""
+"Menyertakan beberapa data seed dalam distribusi agar pusat mereseed "
+"lokasi tidak diperlukan?"
+
+#: i2p2www/pages/site/get-involved/roadmap.html:10
+#, python-format
+msgid ""
+"Reachability Mapping / handle peers partially reachable / enhanced <a "
+"href=\"%(todo)s#fullRestrictedRoutes\">restricted routes</a>"
+msgstr ""
+"Peers Pemetaan Terjangkau / penanganan yang sebagian dapat dijangkau / "
+"ditingkatkan <a href=\"%(todo)s#fullRestrictedRoutes\">pembatasan "
+"rute</a>"
+
+#: i2p2www/pages/site/get-involved/roadmap.html:13
+msgid "Improve help pages and website"
+msgstr "Tingkatkan laman bantuan dan website"
+
+#: i2p2www/pages/site/get-involved/roadmap.html:14
+msgid "More translations"
+msgstr "Penerjemahan lainnya"
+
+#: i2p2www/pages/site/get-involved/roadmap.html:15
+msgid "SSU disconnect message"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/roadmap.html:16
+msgid "Iterative floodfill lookups"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/roadmap.html:21
+msgid "Full review of anonymity issues and other vulnerabilities"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/roadmap.html:22
+msgid ""
+"Reduce memory usage, remove debugging overhead, make it run better on "
+"slow and embedded machines"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/roadmap.html:25
+msgid "Docs"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/roadmap.html:30
+msgid "Full restricted routes"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/roadmap.html:35
+msgid "Tunnel mixing and padding"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/roadmap.html:36
+msgid "User defined message delays"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/roadmap.html:39
+#, python-format
+msgid ""
+"Please see the <a href=\"%(todo)s\">TODO</a> list for more detailed info "
+"about some of these tasks."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:2
+msgid "I2P Project Targets"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:4
+#, python-format
+msgid ""
+"Below is a more detailed (yet still incomplete) discussion of the major "
+"areas\n"
+"of future development on the core I2P network, spanning the plausibly "
+"planned\n"
+"releases. This does not include stego transports, porting to wireless "
+"devices,\n"
+"or tools to secure the local machine, nor does it include client "
+"applications\n"
+"that will be essential in I2P's success. There are probably other things "
+"that\n"
+"will come up, especially as I2P gets more peer review, but these are the "
+"main\n"
+"'big things'. See also <a href=\"%(roadmap)s\">the roadmap</a>. Want to "
+"help?\n"
+"<a href=\"%(volunteer)s\">Get involved</a>!"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:15
+#: i2p2www/pages/site/get-involved/todo.html:53
+msgid "Core functionality"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:15
+#: i2p2www/pages/site/get-involved/todo.html:27
+#: i2p2www/pages/site/get-involved/todo.html:51
+msgid "link"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:17
+#: i2p2www/pages/site/get-involved/todo.html:56
+msgid "NAT/Firewall bridging via 1-hop restricted routes"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:20
+#: i2p2www/pages/site/get-involved/todo.html:129
+msgid "High degree transport layer with UDP, NBIO, or NIO"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:23
+#: i2p2www/pages/site/get-involved/todo.html:217
+msgid "NetworkDB and profile tuning and ejection policy for large nets"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:27
+#: i2p2www/pages/site/get-involved/todo.html:241
+msgid "Security / anonymity"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:29
+#: i2p2www/pages/site/get-involved/todo.html:244
+msgid ""
+"Per-hop tunnel id &amp; new permuted TunnelVerificationStructure "
+"encryption"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:32
+#: i2p2www/pages/site/get-involved/todo.html:294
+msgid "Strict ordering of participants within tunnels"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:35
+msgid "Randomly permuted tunnel lengths"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:38
+#: i2p2www/pages/site/get-involved/todo.html:356
+msgid "Full blown n-hop restricted routes with optional trusted links"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:41
+#: i2p2www/pages/site/get-involved/todo.html:375
+msgid "Hashcash for routerIdentity, destination, and tunnel request"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:44
+#: i2p2www/pages/site/get-involved/todo.html:404
+msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:47
+#: i2p2www/pages/site/get-involved/todo.html:441
+msgid "Stop &amp; go mix w/ garlics &amp; tunnels"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:51
+#: i2p2www/pages/site/get-involved/todo.html:455
+msgid "Performance"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:61
+msgid "Implemented in I2P 0.6.0.6"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:62
+msgid ""
+"The functionality of allowing routers to fully participate within the "
+"network \n"
+"while behind firewalls and NATs that they do not control requires some "
+"basic \n"
+"restricted route operation (since those peers will not be able to receive"
+" \n"
+"inbound connections). To do this successfully, you consider peers one of"
+" \n"
+"two ways:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:72
+msgid ""
+"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
+"do anything special"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:76
+msgid ""
+"<b>Peers who do not have reachable interfaces</b> - these peers must "
+"build \n"
+"a tunnel pointing at them where the gateway is one of the peers they have"
+" \n"
+"established a connection with who has both a publicly reachable interface"
+" \n"
+"and who has agreed to serve as their 'introducer'."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:84
+msgid ""
+"To do this, peers who have no IP address simply connect to a few peers, \n"
+"build a tunnel through them, and publish a reference to those tunnels "
+"within \n"
+"their RouterInfo structure in the network database."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:89
+msgid ""
+"When someone wants to contact any particular router, they first must get"
+" \n"
+"its RouterInfo from the network database, which will tell them whether "
+"they \n"
+"can connect directly (e.g. the peer has a publicly reachable interface) \n"
+"or whether they need to contact them indirectly. Direct connections occur"
+" \n"
+"as normal, while indirect connections are done through one of the "
+"published \n"
+"tunnels."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:97
+msgid ""
+"When a router just wants to get a message or two to a specific hidden "
+"peer, \n"
+"they can just use the indirect tunnel for sending the payload. However, \n"
+"if the router wants to talk to the hidden peer often (for instance, as "
+"part \n"
+"of a tunnel), they will send a garlic routed message through the indirect"
+" \n"
+"tunnel to that hidden peer which unwraps to contain a message which "
+"should \n"
+"be sent to the originating router. That hidden peer then establishes an \n"
+"outbound connection to the originating router and from then on, those two"
+" \n"
+"routers can talk to each other directly over that newly established "
+"direct \n"
+"connection."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:108
+msgid ""
+"Of course, that only works if the originating peer can receive "
+"connections \n"
+"(they aren't also hidden). However, if the originating peer is hidden, "
+"they \n"
+"can simply direct the garlic routed message to come back to the "
+"originating \n"
+"peer's inbound tunnel."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:114
+msgid ""
+"This is not meant to provide a way for a peer's IP address to be "
+"concealed, \n"
+"merely as a way to let people behind firewalls and NATs fully operate "
+"within \n"
+"the network. Concealing the peer's IP address adds a little more work, as"
+" \n"
+"described <a href=\"#fullRestrictedRoutes\">below.</a>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:120
+msgid ""
+"With this technique, any router can participate as any part of a tunnel."
+" \n"
+"For efficiency purposes, a hidden peer would be a bad choice for an "
+"inbound \n"
+"gateway, and within any given tunnel, two neighboring peers wouldn't want"
+" \n"
+"to be hidden. But that is not technically necessary."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:132
+msgid "Both UDP and NIO have been Implemented in I2P"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:133
+msgid ""
+"Standard TCP communication in Java generally requires blocking socket \n"
+"calls, and to keep a blocked socket from hanging the entire system, those"
+" \n"
+"blocking calls are done on their own threads. Our current TCP transport \n"
+"is implemented in a naive fashion - for each peer we are talking to, we \n"
+"have one thread reading and one thread writing. The reader thread simply"
+" \n"
+"loops a bunch of read() calls, building I2NP messages and adding them \n"
+"to our internal inbound message queue, and the writer thread pulls "
+"messages \n"
+"off a per-connection outbound message queue and shoves the data through \n"
+"write() calls."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:144
+msgid ""
+"We do this fairly efficiently, from a CPU perspective - at any time, \n"
+"almost all of these threads are sitting idle, blocked waiting for "
+"something \n"
+"to do. However, each thread consumes real resources (on older Linux "
+"kernels, \n"
+"for instance, each thread would often be implemented as a fork()'ed "
+"process). \n"
+"As the network grows, the number of peers each router will want to talk \n"
+"with will increase (remember, I2P is fully connected, meaning that any \n"
+"given peer should know how to get a message to any other peer, and "
+"restricted \n"
+"route support will probably not significantly reduce the number of "
+"connections \n"
+"necessary). This means that with a 100,000 router network, each router \n"
+"will have up to 199,998 threads just to deal with the TCP connections!"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:156
+msgid ""
+"Obviously, that just won't work. We need to use a transport layer that \n"
+"can scale. In Java, we have two main camps:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:161
+#, python-format
+msgid ""
+"Implemented in I2P 0.6 (\"SSU\") as documented <a "
+"href=\"%(ssu)s\">elsewhere</a>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:164
+msgid ""
+"Sending and receiving UDP datagrams is a connectionless operation - if \n"
+"we are communicating with 100,000 peers, we simply stick the UDP packets"
+" \n"
+"in a queue and have a single thread pulling them off the queue and "
+"shoving \n"
+"them out the pipe (and to receive, have a single thread pulling in any \n"
+"UDP packets received and adding them to an inbound queue)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:171
+msgid ""
+"However, moving to UDP means losing the benefits of TCP's ordering, "
+"congestion \n"
+"control, MTU discovery, etc. Implementing that code will take significant"
+" \n"
+"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
+"a while ago I was taking some measurements in the simulator and on the \n"
+"live net, and the vast majority of messages transferred would fit easily"
+" \n"
+"within a single unfragmented UDP packet, and the largest of the messages"
+" \n"
+"would fit within 20-30 packets. As mule pointed out, TCP adds a "
+"significant \n"
+"overhead when dealing with so many small packets, as the ACKs are within"
+" \n"
+"an order of magnitude in size. With UDP, we can optimize the transport \n"
+"for both efficiency and resilience by taking into account I2P's "
+"particular \n"
+"needs."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:184
+msgid "It will be a lot of work though."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:187
+msgid "NIO or NBIO"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:188
+msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:191
+msgid ""
+"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
+" \n"
+"developers to take advantage of the operating system's nonblocking IO \n"
+"capabilities - allowing you to maintain a large number of concurrent IO \n"
+"operations without requiring a separate thread for each. There is much \n"
+"promise with this approach, as we can scalable handle a large number of \n"
+"concurrent connections and we don't have to write a mini-TCP stack with \n"
+"UDP. However, the NIO packages have not proven themselves to be battle-"
+"ready, \n"
+"as the Freenet developer's found. In addition, requiring NIO support "
+"would \n"
+"mean we can't run on any of the open source JVMs like <a "
+"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
+"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
+"limited \n"
+"support for NIO. <i>(note: this may not be the case anymore, as there \n"
+"has been some progress on Classpath's NIO, but it is an unknown "
+"quantity)</i>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:205
+#, python-format
+msgid ""
+"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
+" \n"
+"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
+"(written before NIO was around). It works by using some native OS code \n"
+"to do the nonblocking IO, passing off events through Java. It seems to \n"
+"be working with Kaffe, though there doesn't seem to be much development \n"
+"activity on it lately (likely due to 1.4's NIO deployment)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:220
+msgid ""
+"Within the current network database and profile management "
+"implementation, \n"
+"we have taken the liberty of some practical shortcuts. For instance, we \n"
+"don't have the code to drop peer references from the K-buckets, as we \n"
+"don't have enough peers to even plausibly fill any of them, so instead, \n"
+"we just keep the peers in whatever bucket is appropriate. Another example"
+" \n"
+"deals with the peer profiles - the memory required to maintain each "
+"peer's \n"
+"profile is small enough that we can keep thousands of full blown profiles"
+" \n"
+"in memory without problems. While we have the capacity to use trimmed \n"
+"down profiles (which we can maintain 100s of thousands in memory), we \n"
+"don't have any code to deal with moving a profile from a \"minimal "
+"profile\" \n"
+"to a \"full profile\", a \"full profile\" to a \"minimal profile\", or to"
+" simply \n"
+"eject a profile altogether. It just wouldn't be practical to write that \n"
+"code yet, since we aren't going to need it for a while."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:235
+msgid ""
+"That said, as the network grows we are going to want to keep these "
+"considerations \n"
+"in mind. We will have some work to do, but we can put it off for later."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:247
+#: i2p2www/pages/site/get-involved/todo.html:331
+#, python-format
+msgid ""
+"Addressed in I2P 0.5 as documented <a "
+"href=\"%(tunnelimpl)s\">elsewhere</a>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:250
+msgid ""
+"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
+"going to Dave, then to Charlie, then Bob, and finally Alice "
+"(A&lt;--B&lt;--C&lt;--D&lt;--E), \n"
+"all five of them will know they are participating in tunnel \"123\", as \n"
+"the messages are tagged as such. What we want to do is give each hop "
+"their \n"
+"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
+"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
+"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
+"the tunnel had the same tunnel ID, collusion attacks aren't much work."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:260
+msgid ""
+"Adding a unique tunnel ID per hop isn't hard, but by itself, "
+"insufficient. \n"
+"If Dave and Bob are under the control of the same attacker, they wouldn't"
+" \n"
+"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
+"would be able to tell by the message bodies and verification structures \n"
+"by simply comparing them. To prevent that, the tunnel must use layered \n"
+"encryption along the path, both on the payload of the tunneled message \n"
+"and on the verification structure (used to prevent simple tagging "
+"attacks). \n"
+"This requires some simple modifications to the TunnelMessage, as well \n"
+"as the inclusion of per-hop secret keys delivered during tunnel creation"
+" \n"
+"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
+"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
+"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
+"signature of the hash of the (encrypted) payload at each step. The "
+"gateway \n"
+"then sends that 16-step encrypted message, along with a 16-step and "
+"16-wide \n"
+"encrypted mapping to the first hop, which then decrypts the mapping and \n"
+"the payload with their secret key, looking in the 16-wide mapping for \n"
+"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
+" \n"
+"and verifying the payload by checking it against the associated signed \n"
+"hash."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:281
+msgid ""
+"The tunnel gateway does still have more information than the other peers"
+" \n"
+"in the tunnel, and compromising both the gateway and a tunnel participant"
+" \n"
+"would allow those peers to collude, exposing the fact that they are both"
+" \n"
+"in the same tunnel. In addition, neighboring peers know that they are \n"
+"in the same tunnel anyway, as they know who they send the message to (and"
+" \n"
+"with IP-based transports without restricted routes, they know who they \n"
+"got it from). However, the above two techniques significantly increase \n"
+"the cost of gaining meaningful samples when dealing with longer tunnels."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:297
+msgid "Implemented in release 0.6.2"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:300
+#, python-format
+msgid ""
+"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
+"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
+"update)</a>, keeping the order of peers within our tunnels consistent \n"
+"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
+"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
+"get to substantially sample Alice's peer selection group. We may even \n"
+"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
+"one way - receiving a message from Dave and sending it to Charlie - and \n"
+"if any of those peers are not available to participate in the tunnel (due"
+" \n"
+"to overload, network disconnection, etc), avoid asking Bob to participate"
+" \n"
+"in any tunnels until they are back online."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:315
+msgid ""
+"More analysis is necessary for revising the tunnel creation - at the \n"
+"moment, we simply select and order randomly within the peer's top tier \n"
+"of peers (ones with fast + high capacity)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:320
+msgid ""
+"Adding a strict ordering to peers in a tunnel also improves the anonymity"
+" \n"
+"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
+" \n"
+"is always the same would be particularly damning. However, peers with \n"
+"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
+"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
+"duration) minutes, use a 1-hop tunnel)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:337
+msgid ""
+"Without tunnel length permutation, if someone were to somehow detect that"
+" \n"
+"a destination had a particular number of hops, it might be able to use "
+"that \n"
+"information to identify the router the destination is located on, per the"
+" \n"
+"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
+"receives a tunnel message from Charlie and forwards it to Alice, Bob "
+"knows \n"
+"Alice is the final router in the tunnel. If Bob were to identify what "
+"destination \n"
+"that tunnel served (by means of colluding with the gateway and harvesting"
+" \n"
+"the network database for all of the LeaseSets), he would know the router"
+" \n"
+"on which that destination is located (and without restricted routes, that"
+" \n"
+"would mean what IP address the destination is on)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:349
+msgid ""
+"It is to counter user behavior that tunnel lengths should be permuted, \n"
+"using algorithms based on the length requested (for example, the 1/MTBF \n"
+"length change for 0-hop tunnels outlined above)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:359
+msgid ""
+"The restricted route functionality described before was simply a "
+"functional \n"
+"issue - how to let peers who would not otherwise be able to communicate \n"
+"do so. However, the concept of allowing restricted routes includes "
+"additional \n"
+"capabilities. For instance, if a router absolutely cannot risk "
+"communicating \n"
+"directly with any untrusted peers, they can set up trusted links through"
+" \n"
+"those peers, using them to both send and receive all of its messages. \n"
+"Those hidden peers who want to be completely isolated would also refuse \n"
+"to connect to peers who attempt to get them to (as demonstrated by the \n"
+"garlic routing technique outlined before) - they can simply take the "
+"garlic \n"
+"clove that has a request for delivery to a particular peer and tunnel \n"
+"route that message out one of the hidden peer's trusted links with "
+"instructions \n"
+"to forward it as requested."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:378
+#, python-format
+msgid ""
+"Within the network, we will want some way to deter people from consuming"
+" \n"
+"too many resources or from creating so many peers to mount a <a "
+"href=\"%(link)s\">Sybil</a> \n"
+"attack. Traditional techniques such as having a peer see who is "
+"requesting \n"
+"a resource or running a peer aren't appropriate for use within I2P, as \n"
+"doing so would compromise the anonymity of the system. Instead, we want \n"
+"to make certain requests \"expensive\"."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:386
+msgid ""
+"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
+"we can use to anonymously increase the \"cost\" of doing certain "
+"activities, \n"
+"such as creating a new router identity (done only once on installation),"
+" \n"
+"creating a new destination (done only once when creating a service), or \n"
+"requesting that a peer participate in a tunnel (done often, perhaps 2-300"
+" \n"
+"times per hour). We don't know the \"correct\" cost of each type of "
+"certificate \n"
+"yet, but with some research and experimentation, we could set a base "
+"level \n"
+"that is sufficiently expensive while not an excessive burden for people \n"
+"with few resources."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:397
+msgid ""
+"There are a few other algorithms that we can explore for making those \n"
+"requests for resources \"nonfree\", and further research on that front is"
+" \n"
+"appropriate."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:407
+#, python-format
+msgid ""
+"To powerful passive external observers as well as large colluding "
+"internal \n"
+"observers, standard tunnel routing is vulnerable to traffic analysis "
+"attacks \n"
+"- simply watching the size and frequency of messages being passed between"
+" \n"
+"routers. To defend against these, we will want to essentially turn some \n"
+"of the tunnels into its own mix cascade - delaying messages received at \n"
+"the gateway and passing them in batches, reordering them as necessary, \n"
+"and injecting dummy messages (indistinguishable from other \"real\" "
+"tunnel \n"
+"messages by peers in the path). There has been a significant amount of \n"
+"<a href=\"%(pdf)s\">research</a> \n"
+"on these algorithms that we can lean on prior to implementing the various"
+" \n"
+"tunnel mixing strategies."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:420
+msgid ""
+"In addition to the anonymity aspects of more varied tunnel operation, \n"
+"there is a functional dimension as well. Each peer only has a certain \n"
+"amount of data they can route for the network, and to keep any particular"
+" \n"
+"tunnel from consuming an unreasonable portion of that bandwidth, they \n"
+"will want to include some throttles on the tunnel. For instance, a tunnel"
+" \n"
+"may be configured to throttle itself after passing 600 messages (1 per \n"
+"second), 2.4MB (4KBps), or exceeding some moving average (8KBps for the \n"
+"last minute). Excess messages may be delayed or summarily dropped. With \n"
+"this sort of throttling, peers can provide ATM-like QoS support for their"
+" \n"
+"tunnels, refusing to agree to allocate more bandwidth than the peer has \n"
+"available."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:433
+msgid ""
+"In addition, we may want to implement code to dynamically reroute tunnels"
+" \n"
+"to avoid failed peers or to inject additional hops into the path. This \n"
+"can be done by garlic routing a message to any particular peer in a "
+"tunnel \n"
+"with instructions to redefine the next-hop in the tunnel."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:444
+msgid ""
+"Beyond the per-tunnel batching and mixing strategy, there are further \n"
+"capabilities for protecting against powerful attackers, such as allowing"
+" \n"
+"each step in a garlic routed path to define a delay or window in which \n"
+"it should be forwarded on. This would enable protections against the long"
+" \n"
+"term intersection attack, as a peer could send a message that looks "
+"perfectly \n"
+"standard to most peers that pass it along, except at any peers where the"
+" \n"
+"clove exposed includes delay instructions."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/todo.html:456
+#, python-format
+msgid ""
+"Performance related improvements are listed on the\n"
+"<a href=\"%(futureperf)s\">Performance</a> page."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:2
+msgid "Bounty Arabic translation of webpage and router console"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:3
+#: i2p2www/pages/site/get-involved/bounties/index.html:118
+msgid "Arabic translation"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:6
+msgid ""
+"To improve I2P usage and attract more people\n"
+"into I2P echelon set out this bounty for translation\n"
+"of the I2P web page and I2P router console into Arabic."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:12
+#: i2p2www/pages/site/get-involved/bounties/russian-trans.html:12
+msgid "This bounty is set into 2 subparts:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:14
+#: i2p2www/pages/site/get-involved/bounties/russian-trans.html:14
+msgid "Part 1 is translation of the webpage."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:17
+msgid ""
+"For collecting the bounty of 20 BTC you need to translate the following "
+"pages:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:25
+msgid "This job was done by hamada and the bounty of 20 BTC was paid to hamada."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:27
+msgid ""
+"Part 2 is the translation of the router console. The router console was\n"
+"partly translated and the bounty of 80 BTC was paid to hamada."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/arabic-trans.html:34
+msgid "Judge is echelon."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/btc-client.html:2
+msgid "Bounty creating a I2P native Bitcoin client"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/btc-client.html:3
+msgid "BTC I2P native client"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/btc-client.html:6
+msgid ""
+"For a future of I2P and attract more people\n"
+"into I2P this bounty is to create a I2P native Bitcoin client. \n"
+"It should integrate with other client via the I2P network and via "
+"gateways to\n"
+"the existant bitcoin network."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/btc-client.html:15
+msgid ""
+"Judge is psychonaut who donated the first 30 &euro; to this bounty.\n"
+"Bounty was almost fullfilled with <a "
+"href=\"http://echelon.i2p/btci2p/\">btci2p</a>, only a small\n"
+"part of creating a plugin is leftover. User giv has been paid for the "
+"work."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/datastore.html:2
+msgid "Bounty datastorage"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/datastore.html:3
+msgid "datastore"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/datastore.html:6
+msgid ""
+"To improve I2P's usage and to be independent of routers \n"
+"online status we want a datastorage as a extension to I2P.\n"
+"Like in Freenet the datastorage should be distributed and every\n"
+"participating node should be able to configure his options.\n"
+"The files should be saved in chunks and at least 2-3 times to\n"
+"obtain redundancy. Usage of storage space should be auto balanced.\n"
+"As it is a extra application, it should work flawless within I2P and\n"
+"cooperate nice with the I2P router. Maybe a integration within the\n"
+"webpage/router could be done."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/datastore.html:17
+msgid ""
+"This bounty cooperates with the 2 other bounties \"frost for I2P\" and \n"
+"\"eepsites in datastorage\"."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/datastore.html:21
+msgid ""
+"The frost for I2P datastorage bounty is paid for a frost like program \n"
+"with which files/messages are stored into database and got from database."
+"\n"
+"It needs to work with a GUI."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/datastore.html:26
+msgid ""
+"The eepsite served out of I2P datastorage extends a I2P router to send\n"
+"out eepsites out of the I2P datastorage. All files for eepsites need to "
+"be\n"
+"saved inside of datastorage and are taken from it.\n"
+"Extension:\n"
+"For better integration all datastorage participants could serve that "
+"eepsite."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/datastore.html:36
+msgid ""
+"For bounties to be declared done and paid, we need the program AND the "
+"source.\n"
+"Source and code need to be licensed under a free license (free to change "
+"and \n"
+"free to distribute)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/deb-pack.html:2
+msgid "Bounty I2P package in Debian and Ubuntu mirrors"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/deb-pack.html:3
+msgid "I2P Ubuntu/Debian package"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/deb-pack.html:6
+msgid ""
+"For the future of I2P and in order to attract more people\n"
+"to I2P, this bounty was set for including an I2P package into the Ubuntu "
+"and Debian \n"
+"archive mirrors.\n"
+"To claim this bounty, the I2P router package needs to be available from\n"
+"Ubuntu and Debian archive mirrors and Debian bug \n"
+"<a href=\"http://bugs.debian.org/cgi-"
+"bin/bugreport.cgi?bug=448638\">448638</a> \n"
+"needs to be closed successfully."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/i2phex.html:2
+msgid "Bounty I2PHex code implementation"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/i2phex.html:3
+msgid "i2phex code implementation"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/i2phex.html:6
+msgid ""
+"To improve I2P usage and attract more people\n"
+"into I2PHex P2P ArneBab setout the bounty for implementing actual\n"
+"Phex code onto I2PHex."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:2
+msgid "Bounties for I2P"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:5
+msgid ""
+"While we always gratefully accept any contributions of code, \n"
+"documentation, and the like, there are other ways to help I2P move \n"
+"forward.  As with any open source project, our goals would be achieved "
+"more \n"
+"rapidly if we were able to support all of our contributors to work on \n"
+"I2P full time.  However, as with any open source project, that's not a \n"
+"possibility.  Instead, we are making use of a bounty system, whereby \n"
+"anyone can get support for working on something that people want \n"
+"implemented, and people who want to contribute to I2P can be assured that"
+" \n"
+"their support goes to what they care about."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:17
+msgid ""
+"We are also keeping open the ability for people who want to support I2P \n"
+"but don't have strong feelings about the bounties available.  Those "
+"people\n"
+"can simply put their trust in the I2P team to do what we feel is best by\n"
+"donating to a catch-all general fund that will be used as deemed \n"
+"necessary - allocated to various bounties, covering incidentals (hosting,"
+" \n"
+"etc), and the like."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:26
+msgid "Current bounties"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:29
+#: i2p2www/pages/site/get-involved/bounties/index.html:84
+#: i2p2www/pages/site/get-involved/bounties/index.html:104
+msgid "Name"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:29
+#: i2p2www/pages/site/get-involved/bounties/index.html:84
+#: i2p2www/pages/site/get-involved/bounties/index.html:104
+msgid "Status"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:29
+#: i2p2www/pages/site/get-involved/bounties/index.html:84
+msgid "Judge"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:29
+#: i2p2www/pages/site/get-involved/bounties/index.html:84
+msgid "Dev"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:29
+#: i2p2www/pages/site/get-involved/bounties/index.html:84
+msgid "Bounty"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:31
+msgid "Frost for I2P datastorage"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:32
+#: i2p2www/pages/site/get-involved/bounties/index.html:39
+#: i2p2www/pages/site/get-involved/bounties/index.html:46
+#: i2p2www/pages/site/get-involved/bounties/index.html:53
+#: i2p2www/pages/site/get-involved/bounties/index.html:74
+#: i2p2www/pages/site/get-involved/bounties/index.html:94
+msgid "Proposal in development"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:34
+#: i2p2www/pages/site/get-involved/bounties/index.html:41
+#: i2p2www/pages/site/get-involved/bounties/index.html:48
+#: i2p2www/pages/site/get-involved/bounties/index.html:55
+#: i2p2www/pages/site/get-involved/bounties/index.html:76
+#: i2p2www/pages/site/get-involved/bounties/index.html:89
+msgid "vacant"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:38
+msgid "Eepsites served out of I2P datastorage"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:45
+msgid "Backporting Phex code onto I2PHex"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:52
+msgid "I2P package in Debian and Ubuntu mirrors"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:59
+msgid "Bitcoin client for I2P"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:60
+msgid "Done, phase of verification"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:66
+msgid "Unit tests and Multi-router Simulation"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:67
+msgid "Partly done, partly in work, partly still open"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:81
+msgid "Hold bounties, set on hold due to jrandom AWOL and missing funding"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:86
+msgid "Bundling bounties"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:87
+msgid "Proposed"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:101
+msgid "Claimed bounties"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:104
+msgid "Dev team"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:106
+msgid "Make I2P IPv6 native"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:113
+msgid "Setting up a SILC server"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:123
+msgid "Datastore over I2P"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:128
+#: i2p2www/pages/site/get-involved/bounties/russian-trans.html:3
+msgid "Russian translation"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:133
+msgid "Swarming file transfer"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:138
+msgid "Streaming library window size"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:143
+msgid "IRC connect time monitor"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:148
+msgid "Unit tests (part 1)"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/index.html:160
+msgid ""
+"Dev lists anyone who may already be working on the bounty - collaboration"
+" is\n"
+"preferred, so if you're interested in working on it, please contact one "
+"of the\n"
+"people listed!"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/ipv6.html:2
+msgid "Bounty I2P IPv6 native"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/ipv6.html:3
+msgid "native IPv6 I2P"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/ipv6.html:6
+msgid ""
+"For a future of I2P and attract more people\n"
+"into I2P I withdrawal the vuze bounty and offer a IPv6 bounty.\n"
+"To claim this bounty, the I2P router needs to run full on native\n"
+"IPv6 connections like it does on IPv4."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/ipv6.html:23
+#: i2p2www/pages/site/get-involved/bounties/vuze-plugin.html:20
+msgid ""
+"For bounties to be declared done and paid, we need the plugin AND the "
+"source.\n"
+"Source and code need to be licensed under a free license (free to change "
+"and \n"
+"free to distribute)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/netdb.html:2
+msgid "NetDB Backend"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/netdb.html:3
+msgid "netDB backend"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/netdb.html:7
+msgid ""
+"The current NetDB implementation (namely the FloodFill system)\n"
+"needs to be extended with another backend to improve reliability,\n"
+"reduce attack surface and solve the scalability issue for the \n"
+"coming years."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/netdb.html:14
+msgid ""
+"A solution likely based on a DHT will be investigated and \n"
+"finally implemented."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/russian-trans.html:2
+msgid "Bounty russian translation of webpage and router console"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/russian-trans.html:6
+msgid ""
+"To improve I2P usage and attract more people\n"
+"into I2P a anonymous donator set out the bounty for translation\n"
+"of the I2P web page and I2P router console into russian language."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/russian-trans.html:17
+msgid ""
+"For collecting the bounty of $115 USD you need to translate the following"
+" pages:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/russian-trans.html:30
+msgid ""
+"Part 2 is the translation of the router console. The whole router console"
+" needs\n"
+"to be translated to collect the bounty of $115 USD."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/russian-trans.html:37
+msgid "Judge is the russian donor."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/silc.html:2
+msgid "Bounty migrate I2P IRC to SILC"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/silc.html:3
+msgid "I2P silc server"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/silc.html:7
+msgid ""
+"For a future of I2P and attract more people\n"
+"into I2P this bounty is to setup and host a I2P SILC server.   \n"
+"This will allow people to send files over their messaging servers and "
+"have intrinsic security built into the protocol."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/silc.html:12
+msgid ""
+"A silc server needs to be set up and run for at least 3 month time to get"
+" payed. \n"
+"A second server should be set up, too."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/silc.html:16
+msgid ""
+"Bounty was withdrawn and money donated to returningnovice and general "
+"fund."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/silc.html:22
+msgid "Judge is An Anonymous Secret Society, society@mail.i2p."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/syndie-2012.html:2
+#: i2p2www/pages/site/get-involved/bounties/syndie-2012.html:3
+msgid "Syndie development"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/syndie-2012.html:7
+msgid ""
+"Beside of I2P we want to encourage users\n"
+"to care more about anonymity and security. As I2P is a low \n"
+"latency network with its natural limits, the software SYNDIE\n"
+"can overcome some of these limits and provide better anonymity\n"
+"for people who really need it."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/syndie-2012.html:14
+msgid ""
+"For our bad sake the syndie project was out of development for \n"
+"quite a long time yet (5 years). To get a fresh and new built \n"
+"with needed bugfixes we set out this bounty. Also syndie needs\n"
+"some enhancements and a better GUI for users to work with it.\n"
+"Current bounty sum is 50 Bitcoin."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/syndie-2012.html:22
+msgid ""
+"The latest Syndie coding rally did improve the situation of the\n"
+"Syndie package dramatically. A new Syndie package with bugfixes\n"
+"was created and made available on different webpages.\n"
+"As a result of this work, the bounty sum was reduced and\n"
+"the withdrawn money moved to the IPv6 bounty."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:2
+msgid "Bounty unittests"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:3
+msgid "unit test"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:7
+msgid ""
+"To improve I2P's maintainability, we want to have a solid set of\n"
+"automated unit tests for the critical code.  While we do have some\n"
+"unit tests at the moment, they are ad-hoc and partly unfinished.  \n"
+"This bounty is for someone to check the existing tests and move over\n"
+"old ones to jUnit, automate their execution, extend them to provide \n"
+"better code coverage, and publish the report online.  Its a massive \n"
+"effort, but can be broken down into phases, listed below (phase 2 \n"
+"must occur first, but further phases may happen in any order).\n"
+"As this needs some reading of code, it is the best start point for\n"
+"new devs to get a good overview of I2P code and coding. A good job\n"
+"for college students, interns or anyone who is just interested."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:20
+msgid ""
+"Take care! Jobs and bounties shuffled a bit!\n"
+"Phase 6,7 and 8 are still open!"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:26
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:40
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:55
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:66
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:77
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:88
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:101
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:112
+#, python-format
+msgid "Phase %(phase)s:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:27
+msgid "CI jenkins and IRC bot"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:28
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:42
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:57
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:68
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:79
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:90
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:103
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:114
+#, python-format
+msgid "Bounty: %(euro)s &euro;"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:29
+msgid "server runs and this section is blocked"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:31
+msgid ""
+"To collect this bounty, a continuous integration server (Jenkins,\n"
+"old name was Hudson) must be set up and a connected IRC bot needs \n"
+"to set up in the channel #i2p-dev on IRC2p network to print out\n"
+"results of build tests.<br>\n"
+"The server needs to be run long term."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:41
+msgid "Check existing SDK tests"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:43
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:69
+msgid "paid to str4d"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:45
+#, python-format
+msgid ""
+"To collect this bounty, the existing SDK tests must be checked \n"
+"and made to work again. The need to be integrated into the ant \n"
+"build scripts (\"ant test\"), and tied in with a code coverage tool (e.g."
+" \n"
+"<a href=\"%(clover)s\">Clover</a>).  The ant script\n"
+"must be capable of generating test status results as a web page, \n"
+"which will be published online."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:56
+msgid "SDK test coverage"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:58
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:80
+msgid "paid to unittests dev team"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:60
+msgid ""
+"To collect this bounty, the automated unit tests of the SDK \n"
+"(i2p/core/java/src) must work again."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:67
+msgid "Router test migration"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:71
+msgid ""
+"As with phase 2, the existing unit tests for the router must be\n"
+"moved over to the automated system."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:78
+msgid "Router test coverage"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:82
+msgid ""
+"To collect this bounty, the automated unit tests of the router \n"
+"(i2p/router/java/src) must work again."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:89
+msgid "Streaming lib tests"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:94
+msgid ""
+"To collect this bounty, a new set of unit tests must meet a \n"
+"measured code coverage of 90&#37; of the streaming lib \n"
+"(i2p/apps/ministreaming/ and i2p/apps/streaming/)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:102
+msgid "Unit tests coverage"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:106
+msgid ""
+"To collect this bounty, all above unit tests must meet the 100&#37;\n"
+"coverage marker (except for log statements)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:113
+msgid "MultiRouter simulation"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:115
+msgid "will be split in more sub-tasks"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:117
+msgid ""
+"To collect this bounty, the existing in-memory multi-router\n"
+"simulation must be checked, made work again and extend to simulate\n"
+"lots of routers in memory on a single machine. This bounty will\n"
+"be split in more fine grained subworks."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/unit-tests.html:126
+msgid ""
+"Judge on all these works is the donor and donor decides if a phase is\n"
+"called succesfull done and money can be paid."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/vuze-plugin.html:2
+msgid "Bounty I2P vuze plugin"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/vuze-plugin.html:3
+msgid "vuze plugin"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/bounties/vuze-plugin.html:6
+msgid ""
+"To improve I2P usage and attract more people\n"
+"into I2P torrent P2P I setout the bounty for a working I2P vuze\n"
+"plugin.\n"
+"The plugin needs to be official and submitted to vuze for publication\n"
+"on their webpage/repository for plugins.\n"
+"It should be easy to install and configured, work smooth and flawless.\n"
+"Configuration should be friendly to starters and made easy to be "
+"anonymous.\n"
+"It should work with *.b32.i2p destinations as with signed (516++ bits) \n"
+"destinations."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:2
+msgid "Application Development"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:3
+msgid "May 2013"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:6
+msgid "Application Development Guide"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:8
+msgid "Contents"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:10
+#: i2p2www/pages/site/get-involved/develop/applications.html:16
+msgid "Why write I2P-specific code?"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:11
+#: i2p2www/pages/site/get-involved/develop/applications.html:102
+msgid "Important concepts"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:12
+#: i2p2www/pages/site/get-involved/develop/applications.html:190
+msgid "Development options"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:13
+#: i2p2www/pages/site/get-involved/develop/applications.html:303
+msgid "Start developing - a simple guide"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:18
+#, python-format
+msgid ""
+"There are multiple ways to use applications in I2P.\n"
+"Using <a href=\"%(i2ptunnel)s\">I2PTunnel</a>,\n"
+"you can use regular applications without needing to program explicit I2P "
+"support.\n"
+"This is very effective for client-server scenario's,\n"
+"where you need to connect to a single website.\n"
+"You can simply create a tunnel using I2PTunnel to connect to that "
+"website, as shown in <a href=\"#tunnel.serverclient\">Figure 1</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:26
+msgid ""
+"If your application is distributed, it will require connections to a "
+"large amount of peers.\n"
+"Using I2PTunnel, you will need to create a new tunnel for each peer you "
+"want to contact,\n"
+"as shown in <a href=\"#tunnel.peertopeer\">Figure 2</a>.\n"
+"This process can of course be automated, but running a lot of I2PTunnel "
+"instances creates a large amount of overhead.\n"
+"In addition, with many protocols you will need to force everyone to \n"
+"use the same set of ports for all peers - e.g. if you want to reliably "
+"run DCC \n"
+"chat, everyone needs to agree that port 10001 is Alice, port 10002 is "
+"Bob, port \n"
+"10003 is Charlie, and so on, since the protocol includes TCP/IP specific "
+"information\n"
+"(host and port)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:37
+msgid ""
+"General network applications often send a lot of additional data that "
+"could be used to identify users.\n"
+"Hostnames, port numbers, time zones, character sets, etc. are often sent "
+"without informing the user.\n"
+"As such, designing the network protocol specifically with anonymity in "
+"mind\n"
+"can avoid compromising user identities."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:43
+msgid ""
+"There are also efficiency considerations to review when determining how "
+"to \n"
+"interact on top of I2P.  The streaming library and things built on top of"
+" it\n"
+"operate with handshakes similar to TCP, while the core I2P protocols "
+"(I2NP and I2CP)\n"
+"are strictly message based (like UDP or in some instances raw IP).  The "
+"important\n"
+"distinction is that with I2P, communication is operating over a long fat "
+"network - \n"
+"each end to end message will have nontrivial latencies, but may contain "
+"payloads \n"
+"of up to several KB.  An application that needs a simple request and "
+"response can get rid\n"
+"of any state and drop the latency incurred by the startup and teardown "
+"handshakes\n"
+"by using (best effort) datagrams without having to worry about MTU "
+"detection or \n"
+"fragmentation of messages."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:57
+#: i2p2www/pages/site/get-involved/develop/applications.html:59
+msgid ""
+"Creating a server-client connection using I2PTunnel only requires "
+"creating a single tunnel."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:59
+msgid "Figure 1:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:64
+#: i2p2www/pages/site/get-involved/develop/applications.html:66
+msgid ""
+"Setting up connections for a peer-to-peer applications requires a very "
+"large amount of tunnels."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:66
+msgid "Figure 2:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:70
+msgid "In summary, a number of reasons to write I2P-specific code:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:74
+msgid ""
+"Creating a large amount of I2PTunnel instances consumes a non-trivial "
+"amount of resources,\n"
+"which is problematic for distributed applications (a new tunnel is "
+"required for each peer)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:78
+msgid ""
+"General network protocols often send a lot of additional data that can be"
+" used to identify users.\n"
+"Programming specifically for I2P allows the creation of a network "
+"protocol\n"
+"that does not leak such information, keeping users anonymous and secure."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:83
+msgid ""
+"Network protocols designed for use on the regular internet can be "
+"inefficient\n"
+"on I2P, which is a network with a much higher latency."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:90
+#, python-format
+msgid ""
+"I2P supports a standard <a href=\"%(plugins)s\">plugins interface</a> for"
+" developers\n"
+"so that applications may be easily integrated and distributed."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:96
+msgid ""
+"Applications written in Java and accessible/runnable\n"
+"using an HTML interface via the standard webapps/app.war\n"
+"may be considered for inclusion in the i2p distribution."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:104
+msgid "There are a few changes that require adjusting to when using I2P:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:108
+msgid "Destination ~= host+port"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:110
+msgid ""
+"An application running on I2P sends messages from and receives messages "
+"to a\n"
+"unique cryptographically secure end point - a \"destination\".  In TCP or"
+" UDP\n"
+"terms, a destination could (largely) be considered the equivalent of a "
+"hostname\n"
+"plus port number pair, though there are a few differences."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:118
+msgid ""
+"An I2P destination itself is a cryptographic construct - all data sent to"
+" one is \n"
+"encrypted as if there were universal deployment of IPsec with the "
+"(anonymized)\n"
+"location of the end point signed as if there were universal deployment of"
+" DNSSEC."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:123
+msgid ""
+"I2P destinations are mobile identifiers - they can be moved from one I2P "
+"router\n"
+"to another (or it can even \"multihome\" - operate on multiple routers at"
+"\n"
+"once).  This is quite different from the TCP or UDP world where a single "
+"end point (port)\n"
+"must stay on a single host."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:130
+msgid ""
+"I2P destinations are ugly and large - behind the scenes, they contain a "
+"2048 bit ElGamal\n"
+"public key for encryption, a 1024 bit DSA public key for signing, and a "
+"variable size \n"
+"certificate, which may contain proof of work or blinded data."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:135
+#, python-format
+msgid ""
+"There are existing ways to refer to these large and ugly destinations by "
+"short\n"
+"and pretty names (e.g. \"irc.duck.i2p\"), but those techniques do not "
+"guarantee\n"
+"globally uniqueness (since they're stored locally in a database on each "
+"person's machine)\n"
+"and the current mechanism is not especially scalable nor secure (updates "
+"to the host list are\n"
+"managed using \"subscriptions\" to naming services).\n"
+"There may be some secure, human readable, scalable, and globally \n"
+"unique, naming system some day, but applications shouldn't depend upon it"
+" being in place,\n"
+"since there are those who don't think such a beast is possible.\n"
+"<a href=\"%(naming)s\">Further information on the naming system</a> is "
+"available."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:149
+#, python-format
+msgid ""
+"While most applications do not need to distinguish protocols and ports,\n"
+"I2P <em>does</em> support them. Complex applications may specify a "
+"protocol,\n"
+"from port, and to port, on a per-message basis, to multiplex traffic on\n"
+"a single destination.\n"
+"See the <a href=\"%(datagrams)s\">datagram page</a> for details.\n"
+"Simple applications operate by listening for \"all protocols\" on \"all "
+"ports\" of a destination."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:158
+msgid "Anonymity and confidentiality"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:160
+msgid ""
+"I2P has transparent end to end encryption\n"
+"and authentication for all data passed over the network - if Bob sends to"
+" Alice's destination,\n"
+"only Alice's destination can receive it, and if Bob is using the "
+"datagrams or streaming \n"
+"library, Alice knows for certain that Bob's destination is the one who "
+"sent the data."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:167
+msgid ""
+"Of course, I2P transparently anonymizes the\n"
+"data sent between Alice and Bob, but it does nothing to anonymize the "
+"content of what they\n"
+"send.  For instance, if Alice sends Bob a form with her full name, "
+"government IDs, and \n"
+"credit card numbers, there is nothing I2P can do.  As such, protocols and"
+" applications should \n"
+"keep in mind what information they are trying to protect and what "
+"information they are willing\n"
+"to expose."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:176
+msgid "I2P datagrams can be up to several KB"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:178
+#, python-format
+msgid ""
+"Applications that use I2P datagrams (either raw or repliable ones) can "
+"essentially be thought\n"
+"of in terms of UDP - the datagrams are unordered, best effort, and "
+"connectionless - but unlike\n"
+"UDP, applications don't need to worry about MTU detection and can simply "
+"fire off large datagrams.\n"
+"While the upper limit is nominally 32 KB, the message is fragmented for "
+"transport, thus dropping\n"
+"the reliability of the whole. Datagrams over about 10 KB are not "
+"currently recommended.\n"
+"See the <a href=\"%(datagrams)s\">datagram page</a> for details.\n"
+"For many applications, 10 KB of data is sufficient for an\n"
+"entire request or response, allowing them to transparently operate in I2P"
+" as a UDP-like \n"
+"application without having to write fragmentation, resends, etc."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:192
+msgid ""
+"There are several means of sending data over I2P, each with their own "
+"pros and cons.\n"
+"The streaming lib is the recommended interface, used by the majority of "
+"I2P applications."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:197
+msgid "Streaming Lib"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:198
+#, python-format
+msgid ""
+"The <a href=\"%(streaming)s\">full streaming library</a> is now the "
+"standard\n"
+"interface. It allows programming using TCP-like sockets, as explained in "
+"the <a href=\"#start.streaming\">Streaming development guide</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:204
+#, python-format
+msgid ""
+"BOB is the <a href=\"%(bob)s\">Basic Open Bridge</a>,\n"
+"allowing an application in any language to make streaming connections \n"
+"to and from I2P. At this point in time it lacks UDP support, but UDP "
+"support\n"
+"is planned in the near future. BOB also contains several tools, such as \n"
+"destination key generation, and verification that an address conforms to"
+" \n"
+"I2P specifications. Up to date info and applications that use BOB can be"
+" \n"
+"found at this <a href=\"http://%(boburl)s/\">eepsite</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:217
+msgid "SAM is not recommended. SAM V2 is okay, SAM V3 is recommended."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:218
+#, python-format
+msgid ""
+"SAM is the <a href=\"%(sam)s\">Simple Anonymous Messaging</a> protocol, "
+"allowing an\n"
+"application written in any language to talk to a SAM bridge through a "
+"plain TCP socket and have\n"
+"that bridge multiplex all of its I2P traffic, transparently coordinating "
+"the encryption/decryption\n"
+"and event based handling.  SAM supports three styles of operation:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:225
+msgid ""
+"streams, for when Alice and Bob want to send data to each other reliably "
+"and in order"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:228
+msgid ""
+"repliable datagrams, for when Alice wants to send Bob a message that Bob "
+"can reply to"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:231
+msgid ""
+"raw datagrams, for when Alice wants to squeeze the most bandwidth and "
+"performance as possible,\n"
+"and Bob doesn't care whether the data's sender is authenticated or not "
+"(e.g. the data transferred\n"
+"is self authenticating)"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:237
+msgid ""
+"SAM V3 aims at the same goal as SAM and SAM V2, but does not require\n"
+"multiplexing/demultiplexing. Each I2P stream is handled by its own socket"
+" between the application\n"
+"and the SAM bridge. Besides, datagrams can be sent and received by the "
+"application through datagram\n"
+"communications with the SAM bridge."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:244
+#, python-format
+msgid ""
+"<a href=\"%(samv2)s\">SAM V2</a> is a new version used by imule\n"
+"that fixes some of the problems in <a href=\"%(sam)s\">SAM</a>.\n"
+"<br />\n"
+"<a href=\"%(samv3)s\">SAM V3</a> is used by imule since version 1.4.0."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:252
+msgid ""
+"The I2PTunnel application allows applications to build specific TCP-like "
+"tunnels to peers \n"
+"by creating either I2PTunnel 'client' applications (which listen on a "
+"specific port and connect\n"
+"to a specific I2P destination whenever a socket to that port is opened) "
+"or I2PTunnel 'server'\n"
+"applications (which listen to a specific I2P destination and whenever it "
+"gets a new I2P \n"
+"connection it outproxies to a specific TCP host/port).  These streams are"
+" 8-bit clean, and are\n"
+"authenticated and secured through the same streaming library that SAM "
+"uses, but there is a \n"
+"nontrivial overhead involved with creating multiple unique I2PTunnel "
+"instances, since each have\n"
+"their own unique I2P destination and their own set of tunnels, keys, etc."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:264
+msgid ""
+"I2P supports a SOCKS V4 and V5 proxy.\n"
+"Outbound connections work well. Inbound (server) and UDP functionality "
+"may be incomplete\n"
+"and untested."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:271
+msgid "Removed"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:272
+msgid ""
+"There used to be a simple \"ministreaming\" library,\n"
+"but now ministreaming.jar contains only the interfaces for the full "
+"streaming library."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:277
+msgid "Datagrams"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:278
+msgid "Recommended for UDP-like applications"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:279
+#, python-format
+msgid ""
+"The <a href=\"%(datagrams)s\">Datagram library</a> allows sending UDP-"
+"like packets.\n"
+"It's possible to use:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:284
+msgid "Repliable datagrams"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:285
+msgid "Raw datagrams"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:289
+msgid "Not recommended"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:290
+#, python-format
+msgid ""
+"<a href=\"%(i2cp)s\">I2CP</a> itself is a language independent protocol, "
+"but to implement an I2CP library \n"
+"in something other than Java there is a significant amount of code to be "
+"written (encryption routines, \n"
+"object marshalling, asynchronous message handling, etc).  While someone "
+"could write an I2CP library in \n"
+"C or something else, it would most likely be more useful to use the C SAM"
+" library instead."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:297
+msgid "Web Applications"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:298
+msgid ""
+"I2P comes with the Jetty webserver, and configuring to use the Apache "
+"server instead is straightforward.\n"
+"Any standard web app technology should work."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:304
+msgid ""
+"Developing using I2P requires a working I2P installation and a "
+"development environment of your own choice.\n"
+"If you are using Java, you can start development with the <a "
+"href=\"#start.streaming\">streaming library</a> or datagram library.\n"
+"Using another programming language, SAM or BOB can be used."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:310
+msgid "Developing with the streaming library"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:312
+msgid ""
+"The following example shows how to create TCP-like client and server "
+"applications\n"
+"using the streaming library."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:317
+msgid "This will require the following libraries in your classpath:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:321
+msgid "The streaming library itself"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:322
+msgid "Factory and interfaces for the streaming library"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:323
+msgid "Standard I2P classes, data structures, API, and utilities"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:326
+msgid ""
+"Network communication requires the usage of I2P network sockets.\n"
+"To demonstrate this, we will create an application where a client can "
+"send text messages to a server,\n"
+"who will print the messages and send them back to the client. In other "
+"words, the server will function as an echo."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:331
+msgid ""
+"We will start by initializing the server application. This requires "
+"getting an I2PSocketManager\n"
+"and creating an I2PServerSocket.\n"
+"We will not provide the I2PSocketManagerFactory with the saved keys for "
+"an existing Destination,\n"
+"so it will create a new Destination for us.\n"
+"So we will ask the I2PSocketManager for an I2PSession, so we can find out"
+" the Destination that\n"
+"was created, as we will need to copy and paste that information later so "
+"the client can connect to us."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:362
+msgid "Code example 1: initializing the server application."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:364
+msgid ""
+"Once we have an I2PServerSocket, we can create I2PSocket instances to "
+"accept connections from clients.\n"
+"In this example, we will create a single I2PSocket instance, that can "
+"only handle one client at a time.\n"
+"A real server would have to be able to handle multiple clients.\n"
+"To do this, multiple I2PSocket instances would have to be created, each "
+"in separate threads.\n"
+"Once we have created the I2PSocket instance, we read data, print it and "
+"send it back to the client.\n"
+"The bold code is the new code we add."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:448
+msgid "Code example 2: accepting connections from clients and handling messages."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:452
+msgid ""
+"When you run the above server code, it should print something like this "
+"(but without the line endings, it should just be\n"
+"one huge block of characters):"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:466
+msgid ""
+"This is the base64-representation of the server Destination. The client "
+"will need this string to reach the server."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:470
+msgid ""
+"Now, we will create the client application. Again, a number of steps are "
+"required for initialization.\n"
+"Again, we will need to start by getting an I2PSocketManager.\n"
+"We won't use an I2PSession and an I2PServerSocket this time.\n"
+"Instead, we will use the server Destination string to start our "
+"connection.\n"
+"We will ask the user for the Destination string, and create an I2PSocket "
+"using this string.\n"
+"Once we have an I2PSocket, we can start sending and receiving data to and"
+" from the server."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:554
+msgid ""
+"Code example 3: starting the client and connecting it to the server "
+"application."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:556
+msgid ""
+"Finally, you can run both the server and the client application.\n"
+"First, start the server application. It will print a Destination string "
+"(like shown <a href=\"#start.streaming.destination\">above</a>).\n"
+"Next, start the client application. When it requests a Destination "
+"string, you can enter the string printed by the server.\n"
+"The client will then send 'Hello I2P!' (along with a newline) to the "
+"server, who will print the message and send it back to the client."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:562
+msgid "Congratulations, you have successfully communicated over I2P!"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:566
+msgid "Existing Applications"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:567
+msgid "Contact us if you would like to contribute."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:588
+msgid "Application Ideas"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:590
+msgid "NNTP server - there have been some in the past, none at the moment"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:593
+msgid ""
+"Jabber server - there have been some in the past, and there is one at the"
+" moment, with access to the public internet"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:596
+msgid "PGP Key server and/or proxy"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:599
+msgid ""
+"Content Distribution / DHT applications - resurrect feedspace,\n"
+"port dijjer, look for alternatives"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:603
+msgid "Help out with <a href=\"http://syndie.i2p2.de/\">Syndie</a> development"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:606
+msgid ""
+"Web-based applications - The sky is the limit for hosting web-server-"
+"based\n"
+"applications such as blogs, pastebins, storage, tracking, feeds, etc.\n"
+"Any web or CGI technology such as Perl, PHP, Python, or Ruby will work."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/applications.html:611
+msgid ""
+"Resurrect some old apps, several previously in the i2p source package -\n"
+"bogobot, pants, proxyscript, q, stasher, socks proxy, i2ping, feedspace"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/developers-keys.html:2
+msgid "I2P Developer's MTN Keys"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/developers-keys.html:4
+msgid ""
+"Monotone servers used by the I2P project require two types of keys to be "
+"used."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/developers-keys.html:8
+msgid ""
+"<a href=\"#commit\">Commit Keys</a> to sign changes checked-in to the "
+"respository; and"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/developers-keys.html:9
+msgid ""
+"<a href=\"#transport\">Transport Keys</a> to push changes to remote "
+"servers."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/developers-keys.html:12
+#, python-format
+msgid ""
+"Everyone that uses Monotone to checkout the I2P codebase will need to\n"
+"<a href=\"%(monotone)s#obtaining-and-deploying-developers-"
+"keys\">import</a> the\n"
+"developer commit keys, but only Monotone <a "
+"href=\"%(monotone)s#operating-a-monotone-server\">\n"
+"server operators</a> will need to import the <a "
+"href=\"#transport\">transport keys</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/developers-keys.html:19
+msgid "Developer Commit keys"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/developers-keys.html:277
+msgid "Developer Transport Keys"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/developers-keys.html:278
+#, python-format
+msgid ""
+"<b>Note:</b> Transport keys are only needed for setting up a\n"
+"<a href=\"%(monotone)s#operating-a-monotone-server\">Monotone server</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/license-agreements.html:2
+msgid "License Agreements"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/license-agreements.html:5
+#, python-format
+msgid "For more information see <a href=\"%(licenses)s\">the licenses page</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/license-agreements.html:8
+msgid ""
+"Following is a monotonerc file defining the current trust list.\n"
+"Developers must use this file in ~/.monotone/monotonerc or\n"
+"_MTN/montonerc in their i2p.i2p workspace."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/license-agreements.html:17
+msgid "Agreements"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:2
+msgid "I2P Software Licenses"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:4
+#, python-format
+msgid ""
+"As required by our\n"
+"<a href=\"%(threatmodel)s\">threat model</a> (among other reasons), the \n"
+"software developed to support the anonymous communication \n"
+"network we call I2P must be freely available, open source, \n"
+"and user modifiable.  To meet these criteria, we make use of\n"
+"a variety of legal and software engineering techniques so\n"
+"as to remove as many barriers to entry for those considering\n"
+"making use of or contributing to the I2P effort."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:15
+msgid ""
+"While the information below may be more confusing than just simply \n"
+"stating \"I2P is BSD\", \"I2P is GPL\", or \"I2P is public domain\",\n"
+"the short answer to the question \"How is I2P licensed?\" is this:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:21
+msgid "All software bundled in the I2P distributions will allow:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:23
+msgid "use without fee"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:24
+msgid ""
+"use with no restrictions on how, when, where, why, or by whom is running "
+"it"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:25
+msgid "access to the source code without fee"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:26
+msgid "modifications to the source"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:29
+msgid ""
+"Most of the software guarantees much more - the ability of <b>anyone</b> "
+"to \n"
+"distribute the modified source however they choose.  However, not all of "
+"the \n"
+"software bundled provides this freedom - the GPL restricts the ability of"
+" \n"
+"developers who wish to integrate I2P with their own applications that are"
+" not \n"
+"themselves open source applications.  While we applaud the noble goals of"
+" \n"
+"increasing the resources in the commons, I2P is best served by removing "
+"any\n"
+"barriers that stand in the way of its adoption - if a developer "
+"considering whether\n"
+"they can integrate I2P with their application has to stop and check with "
+"their lawyer,\n"
+"or conduct a code audit to make sure their own source can be released as "
+"GPL-compatible,\n"
+"we lose out."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:42
+msgid "Component licenses"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:43
+msgid ""
+"The I2P distribution contains several resources, reflecting the "
+"partitioning of \n"
+"the source code into components.  Each component has its own license, "
+"which all \n"
+"developers who contribute to it agree to - either by explicitly declaring"
+" the release\n"
+"of code committed under a license compatible with that component, or by "
+"implicitly\n"
+"releasing the code committed under the component's primary license.  Each"
+" of these \n"
+"components has a lead developer who has the final say as to what license "
+"is compatible\n"
+"with the component's primary license, and the I2P project manager has the"
+" final say as\n"
+"to what licenses meet the above four guarantees for inclusion in the I2P "
+"distribution."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:56
+msgid "Component"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:57
+msgid "Source path"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:58
+msgid "Resource"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:59
+msgid "Primary license"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:60
+msgid "Alternate licenses"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:61
+msgid "Lead developer"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:270
+msgid "GPL + java exception"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:271
+#, python-format
+msgid ""
+"While it may be redundant, just for clarity the\n"
+"<a href=\"%(gpl)s\">GPL</a>'ed code included within\n"
+"I2PTunnel and other apps must be released under the GPL with an "
+"additional \"exception\"\n"
+"explicitly authorizing the use of Java's standard libraries:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:287
+msgid ""
+"All source code under each component will by default be licensed under "
+"the\n"
+"primary license, unless marked otherwise in the code.  All of the above "
+"is\n"
+"summary of the license terms - please see the specific license for the "
+"component\n"
+"or source code in question for authoritative terms.  Component source "
+"locations and\n"
+"resource packaging may be changed if the repository is reorganized."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:295
+msgid "Commit privileges"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:296
+#, python-format
+msgid ""
+"Developers may push changes to a distributed monotone repository if you\n"
+"receive permission from the person running that repository.\n"
+"See the <a href=\"%(monotone)s\">Monotone Page</a> for details."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:302
+msgid ""
+"However, to have changes included in a release, developers\n"
+"must be trusted by the release manager (currently zzz).\n"
+"In addition, they must explicitly agree with the above terms to be "
+"trusted.\n"
+"That means that they must send one of the release managers a signed "
+"message affirming that:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:309
+msgid ""
+"Unless marked otherwise, all code I commit is implicitly licensed under\n"
+"the component's primary license"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:313
+msgid ""
+"If specified in the source, the code may be explicitly licensed under one"
+"\n"
+"of the component's alternate licenses"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:317
+msgid ""
+"I have the right to release the code I commit under the terms I\n"
+"am committing it"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/licenses.html:323
+#, python-format
+msgid ""
+"If anyone is aware of any instances where the above conditions are not "
+"met,\n"
+"please contact the component lead and/or an I2P release manager with "
+"further\n"
+"information.\n"
+"<a href=\"%(licenseagreements)s\">See developers' license agreements</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/release-signing-key.html:2
+msgid "Release Signing Key"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/release-signing-key.html:4
+msgid "Releases 0.7.6 and later are signed by zzz. His current public key is:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/release-signing-key.html:190
+msgid "Releases 0.7.6 through 0.9.12 were signed by zzz with the following key:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/release-signing-key.html:226
+msgid ""
+"Releases 0.6.1.31 through 0.7.5 were signed by Complication. His public "
+"key is:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/security-key.html:2
+msgid "Security GPG Key"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/security-key.html:4
+msgid "Following is the GPG key for the security@geti2p.net email address:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:2
+msgid "Signed Developer Keys"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:4
+msgid ""
+"Keys for zzz, Complication and welterde are provided clearsigned. The key"
+" for jrandom must be\n"
+"verified differently, since he's away, and only left a binary detached\n"
+"signature for his key."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:10
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:16
+msgid "Monotone keys for zzz"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:11
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:47
+msgid "Monotone keys for welterde"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:12
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:79
+msgid "Monotone keys for Complication"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:13
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:114
+msgid "Monotone keys for jrandom"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:14
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:169
+msgid "Others"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:17
+msgid ""
+"<u>Tip:</u> To find zzz's GPG key, on his eepsite locate the key "
+"`0xA76E0BED`, with\n"
+"the name `zzz@mail.i2p` and the fingerprint `4456 EBBE C805 63FE 57E6 "
+"B310 4155\n"
+"76BA A76E 0BED`."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:49
+msgid ""
+"<b>Tip:</b> To find welterde's GPG key, on public keyservers locate the "
+"key\n"
+"`0x62E011A1`, with the name `welterde@arcor.de` and the fingerprint `6720"
+" FD81\n"
+"3872 6DFC 6016 64D1 EBBC 0374 62E0 11A1`."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:81
+msgid ""
+"<b>Tip:</b> To find Complication's GPG key, on his eepsite locate the key"
+"\n"
+"`0x79FCCE33`, with the name `complication@mail.i2p` and the fingerprint "
+"`73CF\n"
+"2862 87A7 E7D2 19FF DB66 FA1D FC6B 79FC CE33`."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:116
+msgid ""
+"<b>Tip:</b> To find jrandom's GPG key for Syndie releases, on public "
+"keyservers locate\n"
+"the key `0x393F2DF9`, with the name `syndie-dist-key@i2p.net` and the\n"
+"fingerprint `AE89 D080 0E85 72F0 B777 B2ED C2FA 68C0 393F 2DF9`."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:122
+msgid ""
+"Jrandom had to leave unexpectedly in the end of 2007. His commit key was\n"
+"deployed in the Syndie Monotone repository, in a file named `mtn-"
+"committers`.\n"
+"That file also had a GPG signature, `mtn-committers.sig`, but it was a "
+"binary\n"
+"detached signature. I am going to supply both files in GPG ASCII-armoured"
+" form\n"
+"below."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:130
+msgid ""
+"First, the file `mtn-committers` containing jrandom's Monotone key. Save "
+"as\n"
+"`mtn-committers.asc` and unpack it using `gpg --output mtn-committers "
+"--dearmor\n"
+"mtn-committers.asc`:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:151
+msgid ""
+"Now the file `mtn-committers.sig`, containing the GPG signature. Save as\n"
+"`mtn-committers.sig.asc` and unpack it using `gpg --output mtn-"
+"committers.sig\n"
+"--dearmor mtn-committers.sig.asc`. Use it to verify the above supplied\n"
+"`mtn-committers` file:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/develop/signed-keys.html:170
+#, python-format
+msgid ""
+"Some of the developers have included their Monotone keys in their <a "
+"href=\"%(licenseagreements)s\">signed license agreement</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:2
+msgid "Developer Guidelines and Coding Style"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:4
+#, python-format
+msgid "Read the <a href=\"%(newdevs)s\">new developers guide</a> first."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:8
+msgid "Basic Guidelines and Coding Style"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:10
+msgid ""
+"Most of the following should be common sense for anybody who has worked "
+"on open source or in a commercial\n"
+"programming envrionment.\n"
+"The following applies mostly to the main development branch i2p.i2p.\n"
+"Guidelines for other branches, plugins, and external apps may be "
+"substantially different;\n"
+"check with the appropriate developer for guidance."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:18
+msgid "Community"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:20
+msgid ""
+"Please don't just \"write code\". If you can, participate in other "
+"development activities, including:\n"
+"development discussions and support on IRC, zzz.i2p, and forum.i2p; "
+"testing;\n"
+"bug reporting and responses; documentation; code reviews; etc."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:25
+msgid ""
+"Active devs should be available periodically on IRC #i2p-dev.\n"
+"Be aware of the current release cycle.\n"
+"Adhere to release milestones such as feature freeze, tag freeze, and\n"
+"the checkin deadline for a release."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:35
+msgid ""
+"Have a basic understanding of distributed source control systems, even if"
+" you haven't\n"
+"used monotone before. Ask for help if you need it.\n"
+"Once pushed, checkins are forever, there is no undo. Please be careful.\n"
+"If you have not used monotone before, start with baby steps.\n"
+"Check in some small changes and see how it goes."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:42
+msgid ""
+"Test your changes before checking them in.\n"
+"If you prefer the checkin-before-test development model,\n"
+"use your own development branch (e.g. i2p.i2p.yourname.test)\n"
+"and propagate back to i2p.i2p once it is working well.\n"
+"Do not break the build. Do not cause regressions.\n"
+"In case you do (it happens), please do not vanish for a long period after"
+"\n"
+"you push your change."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:51
+msgid ""
+"If your change is non-trivial, or you want people to test it and need "
+"good test reports\n"
+"to know whether your change was tested or not, add a checkin comment to "
+"history.txt\n"
+"and increment the build revision in RouterVersion.java."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:56
+msgid ""
+"Ensure that you have the latest monotonerc file in _MTN.\n"
+"Do not check in on top of untrusted revisions."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:60
+msgid ""
+"Ensure that you pull the latest revision before you check in.\n"
+"If you inadvertently diverge, merge and push as soon as possible.\n"
+"Don't routinely make others merge for you.\n"
+"Yes, we know that monotone says you should push and then merge,\n"
+"but in our experience, in-workspace merge works just as well as in-"
+"database merge,\n"
+"without creating a merge revision."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:68
+msgid ""
+"Do not check in major changes into the main i2p.i2p branch late in the "
+"release cycle.\n"
+"If a project will take you more than a couple days, create your own "
+"branch in monotone\n"
+"and do the development there so you do not block releases."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:75
+msgid "Coding Style"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:77
+msgid ""
+"Coding style throughout most of the code is 4-spaces for indentation. Do "
+"not use tabs.\n"
+"Do not reformat code. If your IDE or editor wants to reformat everything,"
+" get control of it.\n"
+"Yes, we know 4 spaces is a pain, but perhaps you can configure your "
+"editor appropriately.\n"
+"In some places, the coding style is different.\n"
+"Use common sense. Emulate the style in the file you are modifying."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:84
+msgid ""
+"New classes and methods require at least brief javadocs. Add @since "
+"release-number."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:87
+msgid ""
+"Classes in core/ (i2p.jar) and portions of i2ptunnel are part of our "
+"official API.\n"
+"There are several out-of-tree plugins and other applications that rely on"
+" this API.\n"
+"Be careful not to make any changes that break compatibility.\n"
+"Don't add methods to the API unless they are of general utility.\n"
+"Javadocs for API methods should be clear and complete.\n"
+"If you add or change the API, also update the documentation on the "
+"website (i2p.www branch)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:95
+msgid ""
+"Tag strings for translation where appropriate.\n"
+"Don't change existing tagged strings unless really necessary, as it will "
+"break existing translations.\n"
+"Do not add or change tagged strings after the \"tag freeze\" in the "
+"release cycle so that\n"
+"translators have a chance to update before the release."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:101
+msgid ""
+"Use generics and concurrent classes where possible. I2P is a highly "
+"multi-threaded application."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:104
+msgid ""
+"We require Java 6 to build but only Java 5 to run I2P.\n"
+"Do not use Java 6 classes or methods without handling the class not found"
+" exceptions\n"
+"and providing alternate Java 5 code. See classes in net.i2p.util for "
+"examples."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:109
+msgid ""
+"Explicitly convert between primitive types and classes;\n"
+"don't rely on autoboxing/unboxing."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:115
+msgid "Licenses"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:117
+msgid ""
+"Only check in code that you wrote yourself.\n"
+"Before checking in any code or library jars from other sources,\n"
+"justify why it is necessary,\n"
+"verify the license is compatible,\n"
+"and obtain approval from the lead developer."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:124
+msgid ""
+"For any images checked in from external sources,\n"
+"it is your responsibility to first verify the license is compatible.\n"
+"Include the license and source information in the checkin comment."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:131
+msgid "Bugs"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:133
+#, python-format
+msgid ""
+"Managing Trac tickets is everybody's job, please help.\n"
+"Monitor %(trac)s for tickets you have been assigned or can help with.\n"
+"Assign, categorize, comment on, fix, or close tickets if you can."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/dev-guidelines.html:138
+msgid ""
+"Close a ticket when you think you've fixed it.\n"
+"We don't have a test department to verify and close tickets.\n"
+"If you arent sure you fixed it, close it and add a note saying\n"
+"\"I think I fixed it, please test and reopen if it's still broken\".\n"
+"Add a comment with the dev build number or revision and set\n"
+"the milestone to the next release."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:2
+msgid "Using an IDE with I2P"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:4
+msgid ""
+"The main I2P development branch (<code>i2p.i2p</code>) has been set up to"
+" enable developers to easily set up two of the commonly-used IDEs for "
+"Java development: Eclipse and NetBeans."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:10
+msgid ""
+"The main I2P development branches (<code>i2p.i2p</code> and branches from"
+" it) contain .project and .classpath Eclipse files, to enable the branch "
+"to be easily set up in Eclipse."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:16
+msgid ""
+"Check out the I2P branch into some directory (e.g. "
+"<code>$HOME/dev/i2p.i2p</code>)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:20
+msgid ""
+"Open Eclipse and create a new Workspace, based in the directory that the "
+"I2P branch was checked out to."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:24
+msgid ""
+"Select \"File - Import...\" and then under \"General\" select \"Existing "
+"Projects into Workspace\"."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:28
+msgid ""
+"For \"Select root directory:\" choose the directory that the I2P branch "
+"was checked out to."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:32
+msgid "If necessary, click \"Refresh\" to refresh the list of projects."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:36
+msgid "Select every project in the list, and click \"Finish\"."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:40
+msgid ""
+"Done! Your workspace should now contain all projects within the I2P "
+"branch, and their build dependencies should be correctly set up."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/ides.html:48
+msgid ""
+"The main I2P development branches (<code>i2p.i2p</code> and branches from"
+" it) contain NetBeans project files."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:2
+msgid "Monotone Guide"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:7
+msgid "Operating a Monotone client"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:9
+#: i2p2www/pages/site/get-involved/guides/monotone.html:61
+msgid "Generating Monotone keys"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:10
+msgid "Trust and initializing your repository"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:11
+#: i2p2www/pages/site/get-involved/guides/monotone.html:194
+msgid "Obtaining and deploying developers' keys"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:12
+#: i2p2www/pages/site/get-involved/guides/monotone.html:225
+msgid "Setting up trust evaluation hooks"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:13
+#: i2p2www/pages/site/get-involved/guides/monotone.html:266
+msgid ""
+"Pulling the <code>i2p.i2p</code>, <code>i2p.www</code> and "
+"<code>i2p.syndie</code> branches"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:14
+#: i2p2www/pages/site/get-involved/guides/monotone.html:312
+msgid "Verifying that trust evaluation works"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:15
+#: i2p2www/pages/site/get-involved/guides/monotone.html:361
+msgid "Checking out a working copy of the latest version"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:16
+#: i2p2www/pages/site/get-involved/guides/monotone.html:388
+msgid "Updating your working copy to the latest version"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:20
+#: i2p2www/pages/site/get-involved/guides/monotone.html:418
+msgid "Operating a Monotone Server"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:22
+msgid "Obtaining and deploying developers’ transport keys"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:23
+#: i2p2www/pages/site/get-involved/guides/monotone.html:428
+msgid "Granting push and pull access"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:24
+#: i2p2www/pages/site/get-involved/guides/monotone.html:473
+msgid "Running Monotone in server mode"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:25
+#: i2p2www/pages/site/get-involved/guides/monotone.html:498
+msgid "Differences under Debian GNU/Linux"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:32
+#, python-format
+msgid ""
+"This is a revised version of <a "
+"href=\"%(transitionguide)s\">Complication's original\n"
+"  guide</a> detailing the use of Monotone in I2P development.\n"
+"  For basic instructions see the <a href=\"%(newdevs)s\">quick-start "
+"guide</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:40
+#, python-format
+msgid ""
+"I2P has a distributed development model. The source code is replicated "
+"across\n"
+"  independently administered <a "
+"href=\"http://www.monotone.ca/\">Monotone</a> (\"MTN\") repositories.\n"
+"  Developers with commit rights are able to push their changes to the "
+"repository\n"
+"  (a <a href=\"%(licenses)s#commit\">license agreement</a> needs to be "
+"signed\n"
+"  before commit rights are granted)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:50
+msgid ""
+"Some of Monotone's noteworthy qualities are: distributed\n"
+"  version control, cryptographic authentication, access control, its "
+"small size, having few\n"
+"  dependencies, storage of projects in a compressed SQLite database file,"
+" and\n"
+"  having the ability to resume interrupted synchronization attempts."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:59
+msgid "Operating a Monotone Client"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:64
+msgid ""
+"A transport key grants you the ability to push your changes to a Monotone"
+" repository server.\n"
+"  In order to commit code into Monotone (in essence signing your code), a"
+" commit key is also needed.\n"
+"  None of the public Monotone servers on I2P currently require a key in "
+"order to read (or pull) the source code."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:72
+msgid ""
+"Without a transport key, one cannot:\n"
+"  <ul>\n"
+"    <li>pull code from a server which doesn't allow global read "
+"access</li>\n"
+"    <li>push code to any server</li>\n"
+"    <li>run a Monotone server</li>\n"
+"  </ul>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:83
+msgid ""
+"Without a commit key, one cannot:\n"
+"  <ul>\n"
+"    <li>commit any code</li>\n"
+"  </ul>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:92
+msgid ""
+"If you only intend to retrieve code from MTN, feel free to skip to the\n"
+"  <a href=\"#trust-and-initializing-your-repository\">next section</a>. "
+"If you want\n"
+"  to generate keys, read the following."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:100
+msgid ""
+"By convention keys are named like an e-mail addresses, but a "
+"corresponding e-mail\n"
+"  address does not need to exist. For example, your keys might be named:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:111
+msgid ""
+"Monotone stores keys under <code><b>$HOME/.monotone/keys</b></code> in "
+"text files which\n"
+"  are named identically to the keys. For example:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:121
+msgid ""
+"To generate transport and commit keys, enter the following commands at a "
+"prompt:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:131
+msgid ""
+"Monotone will prompt you for a password to protect your keys. You are "
+"very strongly encouraged to set a password\n"
+"  for the commit key. Many users will leave an empty password for the "
+"transport key, especially those running a\n"
+"  Monotone server."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:139
+msgid "Trust, and initializing your repository"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:143
+msgid ""
+"Monotone's security model helps to ensure that nobody can easily "
+"impersonate a developer without\n"
+"  it being noticed. Since developers can make mistakes and become "
+"compromised,only manual review can\n"
+"  ensure quality of code. Monotone's trust model will ensure that you "
+"read the right diffs. It does\n"
+"  not replace reading diffs."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:153
+msgid ""
+"A Monotone repository is a single file (a compressed SQLite database) "
+"which contains all of the project's source code and history."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:159
+msgid ""
+"After <a href=\"#obtaining-and-deploying-developers-keys\">importing the "
+"developers' keys into Monotone</a> and\n"
+"  <a href=\"#setting-up-trust-evaluation-hooks\">setting up trust "
+"evaluation hooks</a>,\n"
+"  Monotone will prevent untrusted code from being checked out into your "
+"workspace.\n"
+"  There are commands available to clean untrusted code from your "
+"workspace but in practice they've not been\n"
+"  needed due to the push access policies in place."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:169
+msgid ""
+"A repository can hold many branches. For example, our repository holds "
+"the\n"
+"  following main branches:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:174
+msgid "The I2P router and associated programs"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:175
+msgid "The I2P project website"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:176
+msgid "Syndie, a distributed forums tool"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:181
+msgid ""
+"By convention, the I2P Monotone repository is named <code>i2p.mtn</code>."
+" Before pulling\n"
+"  source code from servers, a database for your repository will need to "
+"be initialized.\n"
+"  To initialize your local repository, change into the directory that you"
+" want the\n"
+"  <code>i2p.mtn</code> file and branch directories to be stored and issue"
+" the following\n"
+"  command:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:197
+msgid ""
+"Keys which developers use to commit code are essential for trust "
+"evaluation in\n"
+"  Monotone. The other developers' transport keys are only required for "
+"Monotone server operators.\n"
+"  "
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:204
+#, python-format
+msgid ""
+"Developers' commit keys are provided GPG-signed <a "
+"href=\"%(signedkeys)s\">on another page</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:210
+#, python-format
+msgid ""
+"To import developers' keys after verifying their authenticity, copy <a "
+"href=\"%(devkeys)s\">all of the keys</a> into a new\n"
+"  file. Create this file (e.g. <code><b>keys.txt</b></code>) in the same "
+"directory where <code>i2p.mtn</code> is located. Import the keys with the"
+" command:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:220
+msgid ""
+"<b>Note</b>: <i>Never</i> add keys to "
+"<code><b>$HOME/.monotone/keys</b></code> manually."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:228
+msgid ""
+"The default Monotone trust policy is way too lax for our requirements: "
+"every committer is trusted by default.\n"
+"  That is not acceptable for I2P development."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:235
+msgid ""
+"Change into the directory <code><b>$HOME/.monotone</b></code> and open "
+"the file\n"
+"  <code>monotonerc</code> with a text editor. Copy and paste the "
+"following two functions into this file:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:244
+msgid ""
+"The first function determines an intersection between two sets, in our "
+"case a\n"
+"  revision's signers and trusted signers."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:251
+msgid ""
+"The second function determines trust in a given revision, by calling the "
+"first\n"
+"  function with \"signers\" and \"trusted\" as arguments. If the "
+"intersection is\n"
+"  null, the revision is not trusted. If the intersection is not empty, "
+"the\n"
+"  revision is trusted. Otherwise, the revision is not trusted."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:260
+msgid ""
+"More information about Trust Evaluation Hooks can be found in the <a "
+"href=\"http://www.monotone.ca/docs/Hooks.html\">official Monotone "
+"documentation</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:268
+msgid ""
+"I2P is shipped with a pre-configured tunnel pointing to the project "
+"Monotone server. Ensure that the tunnel has been started\n"
+"  within <a href=\"http://127.0.0.1:7657/i2ptunnel\">I2PTunnel</a> before"
+" attempting to pull the source code from 127.0.0.1:8998."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:275
+msgid ""
+"Enter the directory where you initialized <code>i2p.mtn</code>. Depending"
+" on whether you\n"
+"  want only I2P sources, or also sources for the I2P website and Syndie, "
+"you can\n"
+"  perform the <code>pull</code> operation in different ways."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:283
+msgid "If you only want I2P sources:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:292
+msgid "If you want all branches:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:298
+msgid ""
+"If the transfer aborts before completing sucessfully, simply repeating "
+"the pull command will resume the transfer."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:304
+msgid ""
+"Pulling in the above examples is done anonymously by specifying an empty "
+"transport key.\n"
+"  If everyone pulls anonymously it will be harder for an attacker who "
+"gains control of the server\n"
+"  to selectively provide some people with tampered data."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:315
+msgid "To verify that trust evaluation works:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:319
+msgid "Make a backup of your <code>monotonerc</code> file."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:320
+msgid ""
+"Modify <code><b>monotonerc</b></code> by setting the trusted_signers "
+"variable in the following way:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:326
+msgid ""
+"With <code><b>monotonerc</b></code> configured as above, Monotone will no"
+" longer trust any committers. Confirm this by changing into the\n"
+"directory where <code>i2p.mtn</code> was created and attempt a checkout "
+"of the I2P branch:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:336
+msgid ""
+"A directory named <code>i2p.i2p</code> should <b>not</b> appear. You "
+"should encounter many\n"
+"  error messages like:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:353
+msgid ""
+"If you are satisfied with results, restore the backup of\n"
+"  <code>monotonerc</code> that was created above. If you didn't create a "
+"backup\n"
+"  as advised, re-read <a href=\"#setting-up-trust-evaluation-"
+"hooks\">Setting up trust evaluation hooks</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:364
+msgid ""
+"If you already have a branch checked out, skip to the <a href"
+"=\"#updating-your-working-copy-to-the-latest-version\">next\n"
+"  section</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:371
+msgid ""
+"Change into the directory where <code>i2p.mtn</code> is located. Over "
+"there issue:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:380
+msgid ""
+"The checkout should complete without error messages and a directory named"
+"\n"
+"  <code>i2p.i2p</code> should appear in the current directory. "
+"Congratulations! You have\n"
+"  successfully checked out the latest I2P sources, ready to be compiled."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:391
+msgid ""
+"If you haven't done this already, pull fresh code from the server to your"
+" local\n"
+"  Monotone repository. To accomplish this, change into the directory "
+"where\n"
+"  <code>i2p.mtn</code> is located and issue:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:402
+msgid "Now change into your <code>i2p.i2p</code> directory, and over there issue:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:411
+msgid ""
+"As long as there were no errors&hellip;Congratulations! You have "
+"successfully updated to the latest I2P sources. They\n"
+"  should be ready to compile."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:420
+msgid "Obtaining and deploying developers' transport keys"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:423
+msgid ""
+"As a server operator you may want to grant push access to certain "
+"developers."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:431
+msgid "By default the Monotone server denies all access."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:437
+msgid "To grant pull access to all clients, set the following in"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:449
+msgid ""
+"No one will not be able to push code to your server without permission "
+"being explicitly granted. To grant push access:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:455
+msgid ""
+"Add the name of the user's transport key to\n"
+"<code>$HOME/.monotone/write-permissions</code>, such as\n"
+"<code><pre>\n"
+"    zzz-transport@mail.i2p\n"
+"    complication-transport@mail.i2p\n"
+"</pre></code>\n"
+"with one key per line."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:466
+msgid ""
+"Import the transport key(s) into your database. The procedure for "
+"importing transport keys is the same as for\n"
+"importing commit keys, which is described in the section <a href"
+"=\"#obtaining-and-deploying-developers-keys\">Obtaining and deploying "
+"developers' keys</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:476
+msgid ""
+"A separate database should be used for your Monotone server because "
+"monotone will lock the database while it is served to others.\n"
+"  Make a copy of your development database, then start the server with:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:483
+msgid ""
+"If your key is protected with a passphrase, Monotone may request the "
+"passphrase\n"
+"  when the first client connects. You can work around this by connecting "
+"making the first client connection to your server\n"
+"  (or by clearing the password for your transport key)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:491
+msgid ""
+"For your server to be accessible for others over I2P, you will need to "
+"create a\n"
+"  server tunnel for it. Use the \"Standard\" tunnel type and \"Bulk\" "
+"profile."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:501
+msgid ""
+"Debian (amongst other distributions) has integrated Monotone into their\n"
+"  framework of daemons/services. Although Monotone servers can still be "
+"run\n"
+"  \"the ordinary way\" on Debian systems, doing it the \"Debian way\" may"
+" be more straightforward."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/monotone.html:509
+msgid ""
+"Permissions are granted by editing the files\n"
+"  <code>/etc/monotone/read-permissions</code> and\n"
+"  <code>/etc/monotone/write-permissions</code>. You'll also need to edit\n"
+"  <code>/etc/default/monotone</code> to enable monotone to start at boot "
+"or to\n"
+"  customize the host, port, or database location."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:2
+msgid "New Developer's Guide"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:4
+msgid ""
+"\n"
+"So you want to start work on I2P? Great!\n"
+"Here's a quick guide to getting started\n"
+"on contributing to the website or the software, doing development or "
+"creating translations."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:9
+#, python-format
+msgid ""
+"\n"
+"Not quite ready for coding?\n"
+"Try <a href=\"%(volunteer)s\">getting involved</a> first."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:16
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:27
+msgid "Basic study"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:17
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:41
+msgid "Getting the I2P code"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:18
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:112
+msgid "Building I2P"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:19
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:133
+msgid "Development ideas"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:20
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:141
+msgid "Making the results available"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:21
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:162
+msgid "Get to know us!"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:22
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:168
+msgid "Translations"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:23
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:174
+msgid "Tools"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:29
+msgid ""
+"Basic development on the I2P router or the embedded applications uses "
+"Java as the main development language.\n"
+"If you don't have experience with Java, you can always have a look at <a "
+"href=\"http://www.mindview.net/Books/TIJ/\">Thinking in Java</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:33
+#, python-format
+msgid ""
+"Study the <a href=\"%(intro)s\">how intro</a>,\n"
+"the <a href=\"%(docs)s\">other \"how\" documents</a>,\n"
+"the <a href=\"%(techintro)s\">tech intro</a>,\n"
+"and associated documents.\n"
+"These will give you a good overview of how I2P is structured and what "
+"different things it does."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:43
+msgid ""
+"For development on the i2p router or the embedded applications,\n"
+"get the monotone source repository installed - short instructions:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:48
+msgid ""
+"Install <a href=\"http://www.monotone.ca/\">monotone</a>.\n"
+"Monotone is a version control system.\n"
+"We use it because it allows us to keep track of who does what changes to "
+"the source code (and for a lot of complicated things, but 'keeping track "
+"of changes' is the basic idea)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:53
+msgid ""
+"Skim over the <a "
+"href=\"http://www.monotone.ca/docs/Tutorial.html\">monotone tutorial</a>,"
+" to make sure you understand the concepts."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:57
+msgid ""
+"If you want to remain anonymous, you need to do an additional step, to "
+"set up a connection to a monotone server over I2P:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:60
+#, python-format
+msgid ""
+"Enable the <a href=\"%(i2ptunnel)s\">i2ptunnel</a> client tunnel on port "
+"8998 pointing to mtn.i2p2.i2p."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:64
+msgid ""
+"Pick a directory where you want to put all your I2P files, and create a "
+"monotone database:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:67
+msgid ""
+"Define the trust list by creating <code>~/.monotone/monotonerc</code> (or"
+" <code>_MTN/monotonerc</code> in the i2p.i2p workspace) with the "
+"following contents:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:72
+#, python-format
+msgid ""
+"Copy and paste the <a href=\"%(devkeys)s\">developer's commit keys</a> "
+"into a new file (e.g. <code>keys.txt</code>) in the same directory\n"
+"  that <code>i2p.mtn</code> is in. Import the keys into your database "
+"with <br><code><pre>      mtn -d i2p.mtn read < keys.txt</pre></code>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:76
+msgid ""
+"Pull the I2P sources to your machine. This may take a long time, "
+"especially if you are doing this over I2P!"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:78
+msgid "Anonymously:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:81
+msgid "Non-anonymously:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:83
+msgid ""
+"Alternatively, instead of 'mtn.i2p2.de', you can also download from mtn"
+".i2p-projekt.de."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:90
+msgid ""
+"All the sources are now present on your machine, in the database file. To"
+" make them available in a directory, you need to check them out:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:92
+msgid ""
+"The above command creates a directory i2p.i2p, which contains all of the "
+"I2P sources."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:96
+msgid "Remarks"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:97
+msgid ""
+"\n"
+"To download the website files instead of the I2P source files, use "
+"'i2p.www' instead of 'i2p.i2p'."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:100
+msgid ""
+"The initial pull may take several hours using the tunnel.\n"
+"If it fails after a partial pull, simply rerun it, it will start where it"
+" left off.\n"
+"If you are in a hurry, use the non-anonymous access."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:105
+#, python-format
+msgid ""
+"A full list of branches, including i2p.i2p and i2p.www can be found on <a"
+" href=\"%(viewmtn)s\">viewmtn</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:108
+#, python-format
+msgid ""
+"A long explanation about using monotone is available on the <a "
+"href=\"%(monotone)s\">monotone page</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:114
+#, python-format
+msgid ""
+"To compile the code, you need the Sun Java Development Kit 6 or higher, "
+"or equivalent JDK\n"
+"(<a href=\"%(sunjdk6)s\">Sun JDK 6</a> strongly recommended) and\n"
+"<a href=\"http://ant.apache.org/\">Apache ant</a>\n"
+"version 1.7.0 or higher.\n"
+"If you go are working on the main I2P code, you can go into the i2p.i2p "
+"directory and run 'ant' to see the build options."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:122
+msgid ""
+"To build or work on console translations, you need\n"
+"the xgettext, msgfmt, and msgmerge tools from the\n"
+"<a href=\"http://www.gnu.org/software/gettext/\">GNU gettext package</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:128
+#, python-format
+msgid ""
+"For development on new applications,\n"
+"see the <a href=\"%(apps)s\">application development guide</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:134
+#, python-format
+msgid ""
+"See <a href=\"http://%(zzz)s/forums/3\">zzz's TODO lists</a>,\n"
+"<a href=\"%(todo)s\">this website's TODO list</a> or\n"
+"<a href=\"%(trac)s\">Trac</a>\n"
+"for ideas."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:143
+#, python-format
+msgid ""
+"See the bottom of <a href=\"%(licenses)s#commit\">the licenses page</a> "
+"for\n"
+"commit privilege requirements. You need these to put code into i2p.i2p "
+"(not required for the website!)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:148
+msgid "Short version of how to generate and use keys if you plan to commit:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:150
+msgid "use an empty passphrase"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:151
+msgid "enter a passphrase"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:152
+#, python-format
+msgid ""
+"<a href=\"mailto:%(email)s\">send</a> this to a mtn repo operator to get "
+"push privileges"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:153
+#, python-format
+msgid ""
+"send this to <a href=\"mailto:%(email)s\">a release manager</a> to get "
+"commit privileges - not required for website"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:154
+msgid "check in with this key"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:155
+msgid "push with this key"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:157
+#, python-format
+msgid "Long version: see the <a href=\"%(monotone)s\">monotone page</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:163
+#, python-format
+msgid ""
+"The developers hang around on IRC. They can be reached on the Freenode "
+"network, OFTC, and on the I2P internal networks. The usual place to look "
+"is #i2p-dev. Join the channel and say hi!\n"
+"We also have <a href=\"%(guidelines)s\">additional guidelines for regular"
+" developers</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:169
+#, python-format
+msgid ""
+"Website and router console translators: See the <a "
+"href=\"%(newtrans)s\">New Translator's Guide</a>\n"
+"for next steps."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:175
+msgid ""
+"I2P is open source software that is mostly developed using open sourced\n"
+"toolkits. The I2P project recently acquired a license for the YourKit "
+"Java\n"
+"Profiler. Open source projects are eligible to receive a free license "
+"provided\n"
+"that YourKit is referenced on the project web site. Please get in touch "
+"if you\n"
+"are interested in profiling the I2P codebase."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-developers.html:183
+#, python-format
+msgid ""
+"YourKit is kindly supporting open source projects with its full-featured "
+"Java Profiler.\n"
+"YourKit, LLC is the creator of innovative and intelligent tools for "
+"profiling\n"
+"Java and .NET applications. Take a look at YourKit's leading software "
+"products:\n"
+"<a href=\"%(java)s\">YourKit Java Profiler</a> and\n"
+"<a href=\"%(dotnet)s\">YourKit .NET Profiler</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:2
+msgid "New Translator's Guide"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:4
+msgid "Here's a very quick guide to getting started."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:6
+msgid "How to Translate the Website"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:8
+#, python-format
+msgid ""
+"Translation of the website is done with .po files. The easiest way by far"
+" to\n"
+"translate the website is to sign up for an account at \n"
+"<a href=\"%(transifex)s\">Transifex</a> and request to join a translation"
+" team. \n"
+"Alternatively it can be done \"the old way\" as outlined below."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:17
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:82
+msgid "Preparation"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:19
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:84
+#, python-format
+msgid ""
+"Come to #i2p-dev on irc and talk to people.\n"
+"Claim the language -\n"
+"To make sure other coworkers don't bump onto the files you are working "
+"on,\n"
+"please update the translation status on <a href=\"%(url)s\">this wiki "
+"page</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:25
+#, python-format
+msgid ""
+"Follow the <a href=\"%(newdevs)s\">new developer's guide</a>,\n"
+"Including the installation of monotone,\n"
+"checking out i2p.www branch, and generate your own monotone keys.\n"
+"It is not required that you sign a dev agreement."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:33
+msgid ""
+"<b>Create files:</b>\n"
+"If the file for your language does not exist yet:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:38
+msgid ""
+"Run \"<code>./extract-messages.sh</code>\" to generate a "
+"<code>messages.pot</code> in the base directory.\n"
+"Edit the header of this file, then run \"<code>./init-new-po.sh "
+"locale</code>\" to generate the file\n"
+"<code>i2p2www/translations/locale/LC_MESSAGES/messages.po</code>. "
+"\"<code>mtn add</code>\" this file."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:43
+msgid ""
+"Edit <code>i2p2www/pages/global/lang.html</code> and add a line for your "
+"language (copy an existing line)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:46
+msgid ""
+"Add a flag image file to <code>i2p2www/static/images/flags/</code> for "
+"the menu (copy from the router)."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:52
+msgid ""
+"<b>Edit files:</b>\n"
+"Edit <code>i2p2www/translations/locale/LC_MESSAGES/messages.po</code>.\n"
+"To work with .po files efficiently, you may wish to use <a "
+"href=\"http://www.poedit.net/download.php\">POEdit</a>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:58
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:151
+msgid ""
+"<b>Check in:</b>\n"
+"\"<code>mtn pull</code>\", \"<code>mtn update</code>\". Then check in by "
+"\"<code>mtn ci -k yourname@mail.i2p file1 file2 ...</code>\"\n"
+"This collects the diff info of your changed file into your local repo. "
+"Then \"<code>mtn sync mtn.i2p2.de -k yourname-transport@mail.i2p "
+"i2p.i2p</code>\".\n"
+"This synchronizes your local repo with the repo on the target machine."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:65
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:158
+msgid "Repeat. Check in often. Don't wait until it is perfect."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:72
+msgid "How to Translate the Router Console"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:74
+#, python-format
+msgid ""
+"The easiest way by far to translate the router console is to sign up for "
+"an account at \n"
+"<a href=\"%(transifex)s\">Transifex</a> and request to join a translation"
+" team. \n"
+"Alternatively it can be done \"the old way\" as outlined below."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:90
+#, python-format
+msgid ""
+"Follow the <a href=\"%(newdevs)s\">new developer's guide</a>,\n"
+"including the installation of monotone and the gettext tools,\n"
+"checking out i2p.i2p branch, and generate your own monotone keys."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:95
+msgid "Generate your own gpg key and sign the dev agreement."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:101
+msgid ""
+"Before starting a console translation, better help translate some i2p "
+"webpages first.\n"
+"At least an i2p homepage in your language would be great."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:106
+msgid ""
+"<b>What to translate:</b>\n"
+"There are about 15 files in the i2p.i2p branch that needs translation:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:132
+msgid ""
+"Where xx is your language code like fr/de/ch/zh/...\n"
+"There may be or may not be files with your lang code. If not, you can "
+"create your own. by copying and renaming other language files you know "
+"with your own lang code."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:137
+msgid ""
+"<b>Create files:</b>\n"
+"If the file for your language does not exist yet, copy another language "
+"file to a new file <code>foo_xx.bar</code> for your language.\n"
+"Then \"<code>mtn add</code>\" the file.\n"
+"After creating a .po file, edit the headers. Then run \"<code>ant "
+"distclean poupdate</code>\"."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:144
+msgid ""
+"<b>Start to work:</b>\n"
+"Edit the HTML files with any text editor.\n"
+"Be sure not to use an editor in HTML mode that reformats everything.\n"
+"To work with .po files efficiently, you may wish to use <a "
+"href=\"http://www.poedit.net/download.php\">POEdit</a>"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:163
+msgid ""
+"As you can see, it's not that difficult.\n"
+"If you have questions about the meaning of the terms in the console, ask "
+"in <code>#i2p-dev</code> on IRC."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:169
+msgid "FAQ"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:171
+msgid ""
+"Q: Why do I have to install monotone, Java, jsp, learn about .po files "
+"and html, etc.? Why can't I just do a translation and email it to you?"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:175
+msgid "A: Several reasons:"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:178
+#, python-format
+msgid ""
+"You might be interested in translating via Transifex. Request to join a "
+"translation team <a href=\"%(transifex)s\">here</a>."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:182
+msgid ""
+"We don't have anybody who has time to accept manual contributions and "
+"submit them to our source control system on your behalf. Even if we did, "
+"it doesn't scale."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:186
+msgid ""
+"Maybe you are thinking translation is a one-step process. It isn't. You "
+"can't do it all at once. You will make mistakes. You need to test it and "
+"tweak it to make it look right <i>before</i> you submit it. Developers "
+"will update or add to the English text, thus requiring a translation "
+"update."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:190
+msgid ""
+"Having translators use a source control system directly provides "
+"authentication and accountablility - we know who is doing what, and we "
+"can track changes, and revert them if necessary."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:194
+msgid ""
+".po files are not difficult. If you don't want to work directly with "
+"them, we recommend 'poedit'."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:198
+msgid ""
+"HTML files are not difficult. Just ignore the html stuff and translate "
+"the text."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:202
+msgid ""
+"Installing and using monotone is not that difficult. Several of the "
+"translators and other contributors to I2P are non-programmers, and they "
+"use monotone regularly. Monotone is simply a source control system, it is"
+" not about \"coding\"."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:206
+msgid ""
+"Our items to translate are not \"documents\". They are html files and po "
+"files, with a specific format and character encoding (UTF-8) that must be"
+" maintained, and not corrupted by email programs or other methods of "
+"transfer."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:210
+msgid ""
+"We looked at 'pootle' as a front-end for translators. It didn't work "
+"well, needed an administrator, and a pootle-based process would suffer "
+"from a number of the above flaws."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:215
+msgid ""
+"<b>In summary:</b>\n"
+"Yes, we know it is somewhat of a hurdle to get started. It's really the "
+"only possible way we can do it. Give it a try, it really isn't that hard."
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:220
+msgid "More Information"
+msgstr ""
+
+#: i2p2www/pages/site/get-involved/guides/new-translators.html:221
+#, python-format
+msgid ""
+"The #i2p-dev channel on IRC, or the <a "
+"href=\"http://%(zzz)s/forums/14\">translation forum on %(zzz)s</a>."
+msgstr ""
+